728x90
728x90
this의 기능 ① 자기 자신(객체)을 가리킴
// 예시 //
// 멤버변수
private String name;
private int age;
// 생성자
public Person(String name, int age) {
// *** 여기서 this는 자기 자신을 가리킴 ***
this.name = name;
this.age = age;
}
this의 기능 ② 생성자에서 다른 생성자를 호출함
// 예시 //
// 멤버변수
private String name;
private int age;
private String phone;
// 생성자 1
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// 생성자 2
public Person(String name, int age, String phone) {
// *** 여기서 this는 다른 생성자를 호출함 ***
this(name, age);
// == new Person(name, age);
// 호출한 생성자에서 this.name = name;, this.age = age;가 실행되었으므로
// 현재 생성자에서는 생략 가능
this.phone = phone;
}
this의 기능 ③ 자신의 주소 값을 반환함
// 예시 //
// Person 클래스에 대한 get 메서드
public Person getPerson() {
// *** 여기서 this는 자기 자신의 주소 값을 반환함 ***
return this;
}
- 해당 기능을 이용하여 디자인 패턴 중 builder 패턴을 생성할 수 있음
super 키워드
- 하위 클래스가 가지는 상위 클래스를 가리킴 : super.메서드명
- 상위 클래스의 생성자 호출 : super();
- 상속 관련 설명 : https://young0105.tistory.com/42
320x100
반응형
'Java > Base' 카테고리의 다른 글
[Java] 배열 (0) | 2023.02.09 |
---|---|
[Java] static 키워드 (0) | 2023.02.09 |
[Java] 배열 - 도서 정보 등록·조회·삭제 프로그램 구현 (0) | 2023.02.08 |
[Java] 접근 제어 지시자와 get(), set() 메서드 (0) | 2023.02.07 |
[Java] 객체와 클래스 3 : 생성자 (0) | 2023.02.06 |