생성자 (constructor)
인스턴스가 생성될 때마다 자동으로 호출되는 특수한 함수인 '인스턴스 초기화 메서드'
인스턴수 변수의 초기화 또는 인스턴스 생성시 수행할 작업에 사용한다.
모든 클래스에는 반드시 하나 이상의 생성자가 있어야 한다.
※ 함수명(생성자명)은 클래스명과 동일해야 한다.
※ 반환형은 없다. void가 아니다.
public <클래스명>( 매개변수 목록) {
. . .
}
매개 변수가 있는 생성자
class dog{
String name; // 인스턴스 변수
int age; // 인스턴스 변수
String sex; // 인스턴스 변수
public void walk(){ }
public void eat() { }
public void bark(){ }
public dog(String name, int age, String sex){
this.name = name; // 인스턴스 변수 name에 지역 변수 name을 대입
this.age = age; // 인스턴스 변수 age에 지역 변수 age을 대입
this.sex = sex; // 인스턴스 변수 sex에 지역 변수 sex을 대입
}
}
참조변수 this
this : 인스턴스 자신을 가리키는 참조변수이다.
인스턴스의 주소가 저장되어 있다.
모든 인스턴스 메서드에 지역변수로 숨겨진 채로 존재한다.
인스턴스 변수값을 초기화 하기 위해 많이 사용한다.
기본 생성자 (default constructor)
public <클래스명> () { . . . }
생성자를 하나도 안 만들 경우 자동으로 생기는 생성자이다.
컴파일러가 알아서 매개변수 없는 생성자를 만들어준다.
※ 기본 생성자의 함수 바디는 비어있다.
※ 생성자를 작성했으면 기본 생성자는 생기지 않는다.
'JAVA 공부 > 객체지향 공부' 카테고리의 다른 글
5. 상속 (2) (0) | 2023.03.18 |
---|---|
4. 상속 (1) (0) | 2023.03.18 |
4. getter와 setter (0) | 2023.03.13 |
2. 변수, 메서드 (0) | 2023.03.13 |
1. 클래스, 객체 (0) | 2023.03.12 |