본문으로 바로가기

[JAVA] this와 this()의 정의와 예제

category 1. 웹개발/1_2_4 Java 2020. 2. 19. 18:00

   

 

this

- 객체 즉, 자기 자신을 나타냅니다.

- 이러한 this는 객체의 주소를 가리키고 있습니다.

package com.company;

public class Car {
    private String modelName;
    private int modelYear;
    private String color;
    private int maxSpeed;
    private int currentSpeed;

    public Car(String modelName, int modelYear, String color, int maxSpeed, int currentSpeed) {
        this.modelName = modelName;
        this.modelYear = modelYear;
        this.color = color;
        this.maxSpeed = maxSpeed;
        this.currentSpeed = 0;
    }
}

- 위의 코드처럼 생성자의 매개변수 이름과 객체의 이름이 같을 경우에는 객체 앞에 this 를 붙여 구현해야 합니다.

- this를 사용하여 객체에 접근할 수 있습니다.

 


this() 

- 생성자 내부에서만 사용할 수 있으며, 같은 클래스의 다른 생성자를 호출할 때 사용합니다.

 

아래의 예제를 보면서 확인해보도록 하겠습니다.

 

Car.class

public class Car {
    private String modelName;
    private int modelYear;
    private String color;
    private int maxSpeed;
    private int currentSpeed;

    public Car(String modelName, int modelYear, String color, int maxSpeed) {
        this.modelName = modelName;
        this.modelYear = modelYear;
        this.color = color;
        this.maxSpeed = maxSpeed;
        this.currentSpeed = 0;
    }

    Car() {
        this("소나타", 2020, "하얀색", 200); // 다른 생성자를 호출
    }

    public String getModel() {
        return this.modelYear +"년식" + this.modelName + " " + this.color;
    }
}

 

 

Main.class

package com.company;

public class Main{
    public static void main(String args[]) {
        Car car01 = new Car();
        System.out.println(car01.getModel());
    }
}

 

 

출력 결과