생성자 함수 자신의 다른 생성자 함수를 호출하는 것이 가능하다.
생성자에서 다른 생성자를 호출할 때에는 this()를 사용한다.
package oop0913;
class Sungjuk {
private String name;
private int kor, eng, mat;
private int aver;
public Sungjuk() { //기본 생성자 함수 default constructor
//생성자 함수 자신의 다른 생성자 함수를 호출할 수 있다
//Sungjuk("손흥민"); 에러
this("손흥민");
}//end
this()는 반드시 생성자의 첫 줄에서만 허용된다.
public Sungjuk(int kor, int eng, int mat) {
this("박지성");
this.kor = kor;
this.eng = eng;
this.mat = mat;
//this("박지성"); 에러. 자신의 생성자 함수를 호출하는 경우 첫 줄에서 호출한다.
}//end
일반 메소드에서는 생성자 함수를 호출할 수 없다.
public void disp() {
//this(85); 에러. 일반 메소드에서 생성자함수를 호출할 수 없다
}//disp() end
this()는 생성자 오버로딩에서 생기는 중복 코드를 제거하는데 이용할 수 있다.
public Sungjuk(int kor, int eng) {
this.kor = kor;
this.eng = eng;
this.mat = 50;
}//end
public Sungjuk(int kor, int eng, int mat) {
this.kor = kor;
this.eng = eng;
this.mat = mat;
}//end
{ } 안에 작성 두 코드는 중복이다. 이 경우 아래와 같이 중복을 제거할 수 있다.
public Sungjuk(int kor, int eng) {
this(kor, eng, 50);
}//end
public Sungjuk(int kor, int eng, int mat) {
this.kor = kor;
this.eng = eng;
this.mat = mat;
}//end
'웹개발 교육 > Java' 카테고리의 다른 글
[34일] Java (29) - Wrapper 클래스 (0) | 2022.09.14 |
---|---|
[33일] Java (28) - getter와 setter (0) | 2022.09.13 |
[33일] Java (26) - 성적 프로그램 ox 표시하기 (0) | 2022.09.13 |
[33일] Java (25) - final (0) | 2022.09.13 |
[33일] Java (24) - static (0) | 2022.09.13 |
생성자 함수 자신의 다른 생성자 함수를 호출하는 것이 가능하다.
생성자에서 다른 생성자를 호출할 때에는 this()를 사용한다.
package oop0913;
class Sungjuk {
private String name;
private int kor, eng, mat;
private int aver;
public Sungjuk() { //기본 생성자 함수 default constructor
//생성자 함수 자신의 다른 생성자 함수를 호출할 수 있다
//Sungjuk("손흥민"); 에러
this("손흥민");
}//end
this()는 반드시 생성자의 첫 줄에서만 허용된다.
public Sungjuk(int kor, int eng, int mat) {
this("박지성");
this.kor = kor;
this.eng = eng;
this.mat = mat;
//this("박지성"); 에러. 자신의 생성자 함수를 호출하는 경우 첫 줄에서 호출한다.
}//end
일반 메소드에서는 생성자 함수를 호출할 수 없다.
public void disp() {
//this(85); 에러. 일반 메소드에서 생성자함수를 호출할 수 없다
}//disp() end
this()는 생성자 오버로딩에서 생기는 중복 코드를 제거하는데 이용할 수 있다.
public Sungjuk(int kor, int eng) {
this.kor = kor;
this.eng = eng;
this.mat = 50;
}//end
public Sungjuk(int kor, int eng, int mat) {
this.kor = kor;
this.eng = eng;
this.mat = mat;
}//end
{ } 안에 작성 두 코드는 중복이다. 이 경우 아래와 같이 중복을 제거할 수 있다.
public Sungjuk(int kor, int eng) {
this(kor, eng, 50);
}//end
public Sungjuk(int kor, int eng, int mat) {
this.kor = kor;
this.eng = eng;
this.mat = mat;
}//end
'웹개발 교육 > Java' 카테고리의 다른 글
[34일] Java (29) - Wrapper 클래스 (0) | 2022.09.14 |
---|---|
[33일] Java (28) - getter와 setter (0) | 2022.09.13 |
[33일] Java (26) - 성적 프로그램 ox 표시하기 (0) | 2022.09.13 |
[33일] Java (25) - final (0) | 2022.09.13 |
[33일] Java (24) - static (0) | 2022.09.13 |