[Java] this(), this

2023. 12. 18. 23:21·Java

생성자 this()


: 생성자에서 다른 생성자 호출 

 

(코드 중복 제거 위해 호출)

 

1. 조건

- 클래스이름 대신 this 사용

- 다른 생성자 호출시 꼭 첫줄에서만 가능!

Test(String sb){
		score=91;
		Test(sb, "가", 88); //에러. Test대신 this써야함, 첫줄x
	}

 

2. 예

public class Test {
	String subject;
	String type;
	int score;
	
	//1.
	Test(){
		this("수학", "가", 85); //3. 호출
	};
	//2.
	Test(String subject){
		this(subject, "가", 85); //3. 호출
	}
	//3.
	Test(String subject,String type,int score){
		this.subject = subject;
		this.type = type;
		this.score = score;
	}
}

 

 

참조변수 this


: 인스턴스 자신을 가르키는 참조변수     참조변수니 주소 저장되어 있음

인스턴스 메서드(생성자 포함)에서 사용가능

(iv와 lv 구별위해 사용)

Test(String subject,String type,int score){

       this.subject = subject;

       this.type = type;

       this.score = score;

}

 

+)static,클래스 메서드 당연히 this 사용불가

this() -> im, this. -> iv  /  this 사용 인스턴스 멤버뿐

static메서드 인스턴스 멤버 못쓰잖아!

 

'Java' 카테고리의 다른 글

[Java] 상속(Inheritance), 포함(composite)  (0) 2023.12.20
[Java] 변수 초기화(명시적, 생성자, 초기화블럭)  (0) 2023.12.18
[Java] 생성자(Constructor)  (0) 2023.12.18
[Java] 오버로딩(overloading)  (0) 2023.12.17
[Java] 클래스 메서드(static 메서드)와 인스턴스 메서드  (0) 2023.12.17
'Java' 카테고리의 다른 글
  • [Java] 상속(Inheritance), 포함(composite)
  • [Java] 변수 초기화(명시적, 생성자, 초기화블럭)
  • [Java] 생성자(Constructor)
  • [Java] 오버로딩(overloading)
Naah
Naah
  • Naah
    blueprint
    Naah
  • 전체
    오늘
    어제
    • 분류 전체보기 (106)
      • Java (28)
      • Kotlin (0)
      • TypeScript (7)
      • React (22)
      • Next.js (1)
      • Spring (22)
      • JPA (12)
      • Spring Data JPA (6)
      • Querydsl (1)
      • Error (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
    • manage
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Naah
[Java] this(), this
상단으로

티스토리툴바