hyeongwoo's blog

[Java] this 본문

JAVA

[Java] this

toribro 2024. 1. 24. 09:51

자바에서 this 는 자신의 객체의 인스턴스를 참조하는 데 사용한다
클래스 내부에서만 사용이 가능하다
 

this 사용

  1. 현재 객체의 필드 참조
    • 해당 클래스의 필드를 명확하게 참조 가능하다
    • 메소드의 매개변수이름과 클래스 필드 이름이 같을때 사용시 유용하다.
  2. 생성자 오버로딩에서 사용
    • 클래스에 여러 생성자가 있을때 한 생성자에서 다른 생성자를 호출 가능하다.
  3. 메소드 체이닝
    • 메소드가 this를 반환시 같은 객체에대해 연속된 메소드 호출이 가능하다.

 

this 사용 예시

  •  자동차 클래스를 만들어 예시를 들었다.
public class Car {
    //필드 선언
    private String color; // 차의 색
    private int speed;    // 차의 속도

    // 생성자 오버로딩
    public Car() {
        this("color", 0);//오버로딩된 생성자 참조
    }

    public Car(String color) {
        this(color, 0);// 오버로딩된 생성자 참조
    }

    public Car(String color, int speed) {
        //필드 초기화
        this.color = color;
        this.speed = speed;
    }

    // 메소드 체이닝을 위한 메소드
    public Car accelerate(int increment) {
        this.speed += increment;
        return this;//자기 자신 반환 ,즉 자신의 인스턴스를 반환한다.
    }

    // 필드에 접근하는 메소드
    public void setSpeed(int speed) {
        this.speed = speed;//this.speed 로 자기 객체의 필드를 참조한다.
    }

    public int getSpeed() {
        return this.speed;//자신의 필드를 반환
    }
}

  
 

'JAVA' 카테고리의 다른 글

[Java] 상속  (0) 2024.01.26
[Java] 메소드  (0) 2024.01.26
[Java] 클래스_(구성)  (2) 2024.01.24
[Java] 객체  (0) 2024.01.24
[Java] 제어문_(반복문 활용)  (0) 2024.01.22