생성자(constructor)
- 인스턴스를 초기화 할 때의 명령어 집합 new
- 생성자의 이름은 그 클래스의 이름과 같음
- 메소드가 아님. 상속되지 않으며, 리턴 값은 없음
디폴트 생성자(Default Constructor)
- 하나의 클래스에는 반드시 하나 이상의 Constructor가 존재
- 프로그래머가 생성자를 기술하지않으면 Default Constructor가 자동생성(컴파일러가 코드에 넣어 줌)
- Default Constructor는 매개 변수 , 구현부가 없음
생성자 오버로드(Constructor overload)
- 필요에 의해 생성자 추가 하는 경우 여러개의 생성자가 하나의 클래스에 있을 수 있음.
참조 자료형(reference data type)
private
- public:전부사용가능 , private:class내부만 가능 , 없음:같은패키지내에서만 가능
this
- 생성된 인스턴스 스스로를 가리키는 예약어
- 생성자에서 다른 생성자를 호출
public Person(){
this("이름없음",34);
}
public Person(String name, int age){
this.name=name;
this.age=age;}
static 클래스 변수, 정적변수
- 인스턴스가 생성될 때 마다 다른 메모리를 가지는 것이 아니라 프로그램이 메모리에 적재(load) 될때 데이터 영역의 메모리에 생성 됨
- 인스턴스 생성과 관계없이 클래스 이름으로 직접 참조 함
- static 메서드
- 클래스 메서드
- 메서드에 static 키워드를 사용하여 구현
- 주로 static 변수를 위한 기능 제공
- static 메서드에서 인스턴스 변수를 사용할 수 없음
(인스턴스 변수는 인스턴스가 먼저 생성되어야 하므로 static 메서드에서는 생성이 불확실한 인스턴스 변수를 사용할 수 없다.)
- 인스턴스 생성과 관계 없이 클래스 이름으로 직접 메서드 호출