[열혈자바] 생성자

이용찬·2021년 12월 30일
0

열혈자바

목록 보기
5/6
post-thumbnail

생성자


  • 인스턴스가 생성될 때마다 호출되는 '인스턴스 초기화 메서드'
  • 모든 클래스에는 반드시 하나 이상의 생성자가 필요

인스턴스 초기화
: 인스턴스 변수에 적절한 값을 저장

class Tv() {
	Tv box = new Tv();
}

// 연산자 new에 의해서 메모리(heap)에 Tv클래스의 인스턴스 생성
// 생성자 Tv()가 호출되어 수행
// 연산자 new의 결과로 생성된 Tv인스턴스의 주소가 반환되어 참조변수 box에 저장

생성자 this()


: 같은 클래스의 다른 생성자를 호출할 때 사용
(첫 줄에서만 사용가능)

class Tv {
	String color;
    int channel;
    
    Tv() {
    	this("white", 3);
    }
    
    Tv(String color, int channel) {
    	this.color = color;
        this.channel = channel;
    }
}

참조변수 this.
: 인스턴스 자신을 가르키는 참조변수, 인스턴스의 주소가 저장
(지역변수와 인스턴스 변수를 구별할 때 사용)

profile
안녕하세요. 클래식을 즐기는 개발자, 이용찬입니다.

0개의 댓글