본문 바로가기
Java

JAVA This

by titlejjk 2023. 5. 1.

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

this는 클래스를 기반으로 생성된 인스턴스를 가르키는데 이 참조를 통해 인스턴스의 필드나 메서드에 접근할 수 있다. 예를 들어, 인스턴스 변수와 매개변수 이름이 같을 때, this를 사용하여 인스턴스 변수를 구분할 수 있다.

public class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name; // this를 사용하여 인스턴스 변수와 매개변수를 구분
        this.age = age; // this를 사용하여 인스턴스 변수와 매개변수를 구분
    }
}

this는 메서드 체이닝에서도 유용하다. 메서드 체이닝은 한 줄에 여러 개의 메서드를 호출하는 방식으로, 이전 메서드의 반환값을 다음 메서드의 호출 대상으로 사용한다.

public class Person {
    private String name;
    private int age;

    public Person setName(String name) {
        this.name = name;
        return this; // this를 반환하여 메서드 체이닝
    }

    public Person setAge(int age) {
        this.age = age;
        return this; // this를 반환하여 메서드 체이닝
    }
}

Person person = new Person().setName("John").setAge(20);

this는 일반적으로 인스턴스 변수나 인스턴스 메서드 내에서 사용되는데 static 메서드나 클래스 변수에서는 사용할 수 없다. 또한 this는 생성자에게 다른 생성자를 호출할 때 사용될 수 있다. 이때, 다른 생성자를 호출하는 코드는 반드시 생성자의 첫 번째 줄에 위치해야한다.

public class Person {
    private String name;
    private int age;

    public Person() {
        this("Unknown", 0); // 다른 생성자 호출
    }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
}

 

'Java' 카테고리의 다른 글

JAVA Abstract  (0) 2023.05.02
JAVA 다형성  (0) 2023.05.02
JAVA Scanner  (0) 2023.05.01
JAVA Static  (0) 2023.04.27
JAVA 생성자  (0) 2023.04.26

댓글