728x90
반응형

자바 this

자바에서 this인스턴스 자기 자신을 가리키는 키워드이다.
this 를 통해 클래스 메소드 및 생성자에서 자기 자신의 데이터를 업데이트하거나 조작할 수 있다.

 

this 는 클래스를 기반으로 생성된 인스턴스를 가리키는 참조 라는 것이다.
여기서 중요한 부분은 인스턴트를 가리키는 참조와 인스턴스 자체는 다르다는 점이다.

 

this 의 특징

객체 자신의 대한 참조값을 가진다. ( 자기 자신을 가리킨다.)
메소드 내에서만 사용된다.
객체 자신을 메소드에 전달하거나 리턴하기 위해 사용된다.
객체 생성자 내에서 사용할 경우, 다른 생성자를 호출한다.
매개 변수와 객체 자신이 가지고 있는 변수의 이름이 같은 경우 이를 구분하기 위해 자신의 변수에 this를 사용한다.
static 메소드에서는 사용할 수 없다.

 

this.멤버변수 : 매개 변수와 객체 자신이 가지고 있는 변수의 이름이 같은 겨우 이를 구분하기 위해 this 를 붙인다.
this(매개변수) : 생성자 내에서 다른 생성자를 호출한다.

 

this 는 다음 예제 코드와 같이 주로 setter 메소드에서 많이 사용했던 기억이 있다.

public class thisClass {
    private int num;

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }
}

 

이렇게 작성된 class 는 다음과 같이 사용해볼 수 있다.

package com.company;

public class thisMain {

    public static void main(String[] args) {
	// write your code here
        thisClass this1 = new thisClass();
        this1.setNum(21);

        thisClass this2 = new thisClass();

        System.out.println(this1.getNum());
    }
}

 

728x90
반응형
복사했습니다!