Java

Java 문법(11)끝 - 예외처리 (try-catch, Exception)

런타임 오류(Run-time Error): 프로그램 동작 중 발생하는 오류 예외처리: 런타임 오류 발생을 막기 위해 적당한 안전장치를 구현하는 것 → 프로그램의 안정성을 높이고, 신뢰도를 높임 try-catch문 public class Main { public static void main(String[] args) { int [] Arr = new int[3]; for(int j = 0 ; j < 4 ; j++) { Arr[j] = j; } } } 위 코드 실행시 에러 뜸 → Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3 at Main.main(Main.java:8) 위 문구는 "Main클래스의 main 메소드에서(Main..

Java 2022.02.08

Java 문법(10) - 다형성

다형성 객체가 다양한 형태로 표현될 수 있다는 개념 → 부모 클래스를 활용하여 자식의 객체를 제어할 수 있다 상속과 다형성 다형성은 상속 관계에 있는 클래스간에만 사용 가능 클래스에서 다형성을 사용할 때 부모 클래스의 객체를 사용하되, 실제 메모리에 담기는 내용은 자식 클래스의 내용을 담음 public class Main { public static void main(String[] args) { //Animal animal = new Animal("동물"); 불가능합니다. Lion lion = new Lion("사자"); lion.Growl(); Cat cat = new Cat("고양이"); cat.Growl(); } } abstract class Animal { String Name; public A..

Java 2022.02.08

Java 문법(9) - 상속, 추상화

상속, 부모클래스와 자식클래스 상속: 클래스의 멤버를 물려준다 부모 클래스: 물려주는 클래스 자식 클래스: 물려받는 클래스 public class Main { public static void main(String[] args) { Parent p = new Parent(); Child c = new Child(); p.print(); c.print(); } } // Parent 클래스 정의 class Parent { public int iInt; public void print() { System.out.println("Parent Class"); } } // Child 클래스 정의 class Child extends Parent{ } // > Parent Class // Parent Class 14~..

Java 2022.02.08

Java 문법(8) - 이차원배열, 클래스배열

int [] Arr = new int[10]; 배열에 대해 다시 짚어보면, 위와 같이 배열을 선언하고 메모리 할당까지 할 수 있었음 위 배열은 선 형태로 연속되도록 정의하였기에 1차원 배열이며 가장 기본적인 배열임 2차원 배열 여러 개의 1차원 배열로 구성될 수 있음 import java.io.*; class Main { public static void main(String[] args) throws Exception { int [][] arr = new int[10][10]; for(int j = 0 ; j < 10 ; j++) { for(int k = 0 ; k < 10 ; k++) { arr[j][k] = j * k; } } for(int j = 0 ; j < 10 ; j++) { for(int ..

Java 2022.02.08

Java 문법(7) - 데이터 입출력

지금까지 우리는 System.out.print로 값을 출력 및 확인을 했음. 즉, 콘솔 창을 통해 프로그램 내부에서 데이터가 어떻게 변화하는지 확인했음 출력 기능: 컴퓨터 내부의 데이터를 컴퓨터 외부로 보여주는 기능 출력 장치: 출력 기능을 담당하는 장치 (ex. 모니터, 스피커, 프린터 등) 입력 기능: 외부에서 컴퓨터 내부로 데이터를 입력할 수 있는 기능 입력 장치: (ex. 마우스, 키보드, 마이크 등) 키보드 데이터 입력받기1 콘솔: 현재 배우고 있는 프로그래밍 환경 콘솔은 대표적인 CLI(Command Line Interface) 개발 환경 CLI 환경: 글자를 이용한 입출력 환경. 입출력 방식이 글자로 제한됨 System.out.print 메소드는 자바를 활용한 CLI환경에서의 출력 메소드 S..

Java 2022.02.07

Java 문법(6) - 클래스와 객체, 접근제한자

클래스: 사용자가 직접 정의하여 사용할 수 있는 자료형 클래스와 기본자료형 차이점: 형태 공통점: 형식과 사용 방법을 명시한 실체 없는 틀 → 자료형과 변수가 항상 짝꿍을 이루는 것처럼 클래스 또한 객체와 짝꿍을 이룸 ‘객체’는 ‘클래스’라는 자료형으로 만들어진 변수 클래스는 객체가 선언되었을 때 실체를 가지게 되며, 객체를 통해 클래스에 포함된 다양한 데이터를 다룰 수 있음 예시 - 붕어빵 틀과 붕어빵의 관계 붕어빵 틀 없이 붕어빵이 만들어질 수 없고, 붕어빵 틀은 붕어빵을 만들지 않으면 쓸모 없는 도구가 됨 = 클래스 없이 객체를 만들 수 없고, 클래스는 객체를 만들지 않으면 쓸모 없는 도구가 됨 붕어빵 틀을 사용하기 위해 재료와 사용 메뉴얼을 필요로 하며, 만들 수 있는 붕어빵은 초코붕어빵, 슈크림..

Java 2022.02.07

Java 문법(5) - 배열 기초, String

배열 하나의 변수 이름으로 여러 개의 변수를 사용할 수 있게 하는 기법 변수 혹은 상수의 모음 배열에 포함된 요소들이 연속 할당되는 것이 특징 하나의 배열은 하나의 자료형으로 통일됨 배열의 선언 import java.io.*; class Main { public static void main(String[] args) throws Exception { int [] Array = new int[10]; } } int [] Array 에서 []는 배열형 변수라는 뜻 → Array 변수는 배열이라는 것을 나타냄 new int[10]; 에서 new 는 변수에 메모리 공간을 할당할 때 사용하는 단어로, 참조형 자료형에 메모리 공간을 할당할 때 사용 참조형 자료형: 기본형 자료형 제외한 나머지 자료형 모두 참조형 ..

Java 2022.02.06

Java 문법(4) - 메소드

메소드의 기본 함수와 같은 역할 코드 간결성 높임 변수 혹은 상수를 입력하면 메소드 내부에서 연산을 거친 뒤 결괏값을 출력 → 메소드에는 입력과 출력이 존재 입력 매개변수 or 파라미터 없을 수도, 무한히 많을 수도 있음 void를 제외한 모든 자료형을 파라미터로 사용할 수 있음 매개변수로 선언된 변수들은 메소드 내에서 지역변수처럼 사용 가능 출력 return value(리턴 값) - 메소드가 종료된 뒤 최종으로 남는 결과 값 메소드의 기본 구조 메소드 리턴 값의 자료형 메소드 이름 매개변수 메소드 내용 return import java.io.*; class Main { public staticint add(int a, int b) { int result = a+b; return result; } pub..

Java 2022.02.06