JAVA 프로그래밍

[JAVA] 풀스택 개발자 부트캠프 009일차 ② this

selfdailycoding 2025. 1. 7. 13:24

this : reference(참조)
       포인터
       자기 자신을 가리키는 포인터
       클래스의 어디에서나 접근이 가능
       메소드의 0번째 매개변수 설정되어 있음

MyClass mycls = new MyClass();
                 stack          heap


public class MainClass {
    public static void main(String[] args) {

        MyClass cls = new MyClass();
        System.out.println(cls);
        cls.function();
        cls.method(222);

        cls.setNumber(234);
        System.out.println(cls.getNumber());
    }
}

 

class MyClass{
    private int number;
    private String name;

    void function(){
        this.number = 11;
        this.name = "홍길동";
        // this.method(123);
        System.out.println( this );
    }
    void method(int n){
        System.out.println("가인수 " + number);             // <- number는 가인수
        System.out.println("멤버 변수 " + this.number);     // <- number는 멤버변수
        // this는 가인수와 멤버변수를 구분할 때 씀. 같은 이름의 변수가 있을 때만 사용.

        System.out.println(number);     // <- number는 멤버변수
    }

    /*
    void setNumber(int number){
        this.number = number;
    }
    int getNumber(){
        return number;
    }
    */

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getNumber() {
        return number;
    }

    public void setNumber(int number) {
        this.number = number;
    }
}