JAVA
인스턴스 멤버와 정적 멤버
인스턴스 멤버 객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드를 말하는데, 이들을 각각 인스턴스 필드, 인스턴스 메소드라고 부른다. 인스턴스 멤버 선언 // Car클래스에 인스턴스 필드 gas와 인스턴스 메소드 setSpeed()를 선언 public class Car { //필드 int gas; //메소드 void setSpeed(int speed) { ••• } } this 객체 내부에서도 인스턴스 멤버에 접근하기 위해 this를 사용 객체는 자신을 this라고 한다. 정적 멤버 클래스에 고정된 멤버로서 객체를 생성하지 않고 사용할 수 있는 필드와 메소드를 말하는데, 이들을 각각 정적 필드, 정적 메소드라고 부른다. 정적 멤버 선언 정적 필드와 정적 메소드를 선언하려면 필드와 메소드 선언 시..

메소드
메소드 선언 메소드 선언은 선언부(리턴 타입, 메소드 이름, 매개 변수 선언)와 실행 블록으로 구성 리턴 타입 리턴값(메소드를 실행한 후의 결과값)의 타입 메소드는 리턴값이 있을 수도 있고 없을 수도 있으나 리턴값이 있을 경우 리턴 타입이 선언부에 명시 void powerOnO { ••• } double divide( int x, int y ) { ••• } // 리턴값의 유무는 메소드를 호출하는 방법에서 다름 powerOnO; double result = divide( 10, 20 ); 메소드 이름 숫자로 시작하면 안 되고, $와 _를 제외한 특수 문자를 사용하지 말아야 합니다. 관례적으로 메소드 이름은 소문자로 작성합니다. 서로 다른 단어가 혼합된 이름이라면 뒤이어 오는 단어의 첫 글자는 대문자로 작..

생성자
생성자 - new 연산자로 클래스로부터 객체를 생성할 때 호출되어 객체의 초기화를 담당 - 모든 클래스는 생성자가 반드시 존재하며, 생성자를 하나 이상 가질 수 있다. 객체 초기화 필드를 초기화하거나 메소드를 호출해서 객체를 사용할 준비를 하는 것 생성자를 실행하지 않고는 클래스로부터 객체를 만들 수 없다. 기본 생성자 우리가 클래스 내부에 생성자 선언을 생략했다면 컴파일러는 다음과 같이 중괄호 {} 블록 내용이 비어 있는 기본 생성자를 바이트 코드에 자동 추가 [public] 클래스() {} 예를 들어 Car 클래스를 설계할 때 생성자를 생략하면 기본 생성자가 다음과 같이 생성한다. 그렇기 때문에 클래스에 생성자를 선언하지 않아도 다음과 같이 new 연산자 뒤에 기본 생성자를 호출해서 객체를 생성할 수..
열거 타입
열거 타입 - 한정된 값인 열거 상수 중에서 하나의 상수를 저장하는 타입 public enum Week { //Week-> 열거타입이름 MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY // -> 열거 상수 } 열거 타입 선언 - 열거 타입을 선언하기 위해서는 먼저 열거 타입의 이름을 정하고 해당 이름으로 소스 파일(.java)을 생성해야 한다. - 열거 타입 이름은 관례적으로 첫 글자를 대문자로 하고 나머지는 소문자로 구성한다. 만약 여러 단어로 구성된 이름이라면 각 단어의 첫 글자는 대문자로 하는 것이 관례이다. - public enum 키워드는 열거 타입을 선언하기 위한 키워드이며, 반드시 소문자로 작성해야 합니다 public enum ..

배열
배열 - 같은 타입의 데이터를 연속된 공간에 나열하고, 각 데이터에 인덱스를 부여해놓은 자료구조 - score 배열의 각 인덱스는 각 항목의 데이터를 읽거나 저장하는데 사용 - 배열 이름 옆에 대괄호에 [] 기입된다. 인덱스는 0부터 시작한다. score[인덱스] 배열은 같은 타입의 데이터만 저장할 수 있다. 한번 생성된 배열은 길이를 늘리거나 줄일 수 없다 배열 선언 - 배열을 사용하기 위해서는 우선 배열 변수를 선언해야 한다. int[] intArray; double[] doubleArray; String[] strArray; int intArray[]; double doubleArray[]; String strArray[]; 배열 생성 1) 값 목록으로 배열 생성 타입[] 변수 = {값0, 값1, ..

참조 타입
기본 타입 : 정수, 실수, 문자, 논리 리터럴을 저장하는 타입 byte, char, short, int, long, float, double, boolean 변수는 실제 값을 변수 안에 저장 참조 타입 : 객체의 번지를 참조하는 타입으로 배열, 열거, 클래스, 인터페이스를 말합니다. 배열, 열거, 클래스, 인터페이스 변수는 메모리의 번지를 변수 안에 저장(번지를 통해 객체를 참조한다) 기본 타입 변수 int age = 25; double price = 100.5; 참조 타입 변수 String name = "신용권"; String hobby = "독서"; 메모리 사용 영역 메소드 영역 : JVM이 시작할 때 생성되고 모든 스레드가 공유하는 영역 클래스 별로 정적 필드와 상수, 메소드 코드, 생성자 코드등..

조건문
if문 : 조건식의 결과가 true, false이냐에 따라 실행문 결정 Math.random() 메소드 0.0과 1.0 사이에 속하는 double 타입의 난수 하나를 리턴한다. 이 때 0.0은 범위에 포함되고 1.0은 포함되지 않는다. int num = (int)(Math.random() * n) + 1; start 부터 시작하는 n개의 정수 중에서 임의의 정수 하나를 얻기 위한 연산식 switch문 : 변수가 어떤 값을 갖느냐에 따라 실행문 결정 default 생략 가능 case 끝에 break가 붙어 있는 이유 : 다음 case를 실행하지 않고 switch문을 빠져나가기 위해서이다. break가 없다면 다음 case가 연달아 실행되는데 이때는 case값과 상관없이 실행된다. 확인 문제 조건문의 종류 ..