기본 자료형 : byte, short, int, long, float, double, char, boolean
기본 자료형 8개를 제외한 나머지 타입은 모두 참조 자료형
기본 자료형과 참조 자료형의 가장 큰 차이는 new를 사용해서 객체를 생성하는지 여부의 차이 (String, 배열은 new없이 생성 가능)
생성자
기본 생성자 : 다른 생성자가 없을 경우 기본으로 컴파일할 때 생성
this 예약어
메소드 overloading
메소드에 반환값 명시하고 리턴해주지 않으면 컴파일 오류 발생, 리턴 문장 이후 문장 작성하면 컴파일 에러
DTO를 리턴 타입으로 선언해주면, 여러 개의 데이터를 하나의 타입에 넣어서 넘겨줄 수 있다.
void인 메소드는 return;을 적어주면 메소드 수행 종료로 인식한다.
static
static 블록
- 어떤 클래스의 객체가 생성되면서 딱 한 번만 불려야 하는 코드
- 객체는 여러 개를 생성하지만, 한 번만 호출되어야 하는 코드
- 객체가 생성되기 전에 클래스에 대한 참조가 발생하자마자 한 번만 호출되고, 그 후엔 호출할 수 없다.
- 클래스 내에, 메소드 밖에 선언되어야 한다.
- 여러 개 선언 가능, 선언된 순서대로 블록들이 차례대로 호출된다
- 클래스를 초기화할 때 꼭 수행되어야 하는 작업이 있을 경우 유용하게 사용될 수 있다.
- static 블록 안에는 static한 것들만 호출할 수 있다.
Pass by Value : 메소드의 매개변수로 넘길 때 원래 값은 놔두고 값만 복사해서 전달한다. 기본 자료형 전달 방법
[주의]
b="z";
b=new String("z");
String은 따옴표로 값을 할당하면 new를 사용하여 객체를 생성한 것과 같다
String이 아닌 다른 참조 자료형들도 호출된 메소드에서 다른 객체로 대체하여 처리하면 기존 값은 바뀌지 않는다.
Pass by Reference : 객체에 대한 참조가 넘어감. 참조 자료형 전달 방법
메소드의 임의 개수의 매개 변수 전달하는 방법