본문 바로가기

JAVA/개념

JAVA :: this() 생성자, this 참조변수

 

 

this() 생성자
클래스 내부의 생성자에서 다른 생성자를 호출시 사용되는 예약어
반드시 생성자의 첫 줄에 구현해야한다

 

 

예시 :

 

class Car4{

String color;

int number;

int sno;

Car4(String c, int n){

color = c;

number = n;

sno = ++cnt;

System.out.println("ScIn 생성자호출");

}

Car4(String c){

this(c,1000); //Car4(String c, int n) 생성자 호출

System.out.println("Sc 생성자호출");

}

Car4(int n){

this("gray", n); //Car4(String c, int n) 생성자 호출

System.out.println("In 생성자호출");

}

 

구동 :

Car4 c1 = new Car4("white", 1234);

System.out.println(c1);

Car4 c2 = new Car4("black");

System.out.println(c2);

Car4 c3 = new Car4(2000);

System.out.println(c3);

 

 

출력 :

ScIn 생성자호출

1번 자동차white, 1234 (200, 120)

ScIn 생성자호출

Sc 생성자호출

2번 자동차black, 1000 (200, 120)

ScIn 생성자호출

In 생성자호출

3번 자동차gray, 2000 (200, 120)

 

 

 

this. 참조변수

 

자기 참조변수
현재 객체의 참조값을 저장함
인스턴스 메서드에서만 사용이 가능함 => 인스턴스 메서드 내부에 지역변수로 선언됨
지역변수와 멤버변수의 같은 이름을 가진 경우 구분시 사용함

 

예시 :

 

Car4(String color, int number){

this.color = color;

this.number = number;

sno = ++cnt;

}

 

 

'JAVA > 개념' 카테고리의 다른 글

JAVA :: 상속  (0) 2024.03.28
JAVA :: 초기화블럭  (0) 2024.03.28
JAVA :: 생성자 용도와 사용법  (0) 2024.03.28
JAVA :: printf 출력서식 - %d, %f, %c, %s  (0) 2024.03.26
JAVA :: 향상된 for문으로 빠른 출력하기  (0) 2024.03.24