티스토리 뷰

자바

[Java] 'this'와 'this()'의 차이

김쓰로그 2023. 4. 13. 17:41

오늘은 Java의 'this'와 'this()' 키워드의 차이에 대해 적어보자 한다.


this

  • 'this' 키워드는 현재 객체를 가리킨다.
  • 클래스 내부에서 인스턴스 변수와 메서드의 매개변수의 이름이 같은 경우 this를 사용해서 현재 객체의 인스턴스 변수를 참조할 수 있다.

 

public class TestClass {
    private int x;
    
    public void setX(int x) {
        this.x = x;
    }
}


this()

  • 클래스의 다른 생성자를 호출하는 데 사용된다.
  • 'this()' 를 사용하여 같은 클래스의 다른 생성자를 호출할 수 있다.
public class TestClass {
    private int x;
    private int y;
    
    public TestClass(int x, int y) {
        this.x = x;
        this.y = y;
    }
    
    public TestClass(int x) {
        this(x, 0) // this()를 통해 위의 생성자가 호출됨 인자로 x에는 x값을, y에는 0을 전달함
    }
}

this()를 통해 기존의 코드를 재활용함으로써 코드의 중복을 줄일 수 있다는 장점을 가질 수 있다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함