ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] this의 의미
    JAVA 2020. 11. 13. 15:49
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public class Shop{
     
        //필드
        int stock;
     
        //메소드
        void setStock(int a){
     
            stock = a;
     
        }
     
    }
    cs
     
     

    위와 같이 stock 에 외부의 값을 입력받을수 있는 setStock() 이라는 Setter함수를 선언하였다.

    위에서는 메서드의 인자 변수이름을 int a 라 하였는데 여기서 인자값의 변수를 

    필드의 이름과 같이 하려면?

     

    this를 사용하면,

    메서드의 인수나 변수에 필드와 같은 이름을 붙여도 그것들을 구분하여 사용할 수 있다.

    this 는 주로 생성자와 메소드의 매개변수 이름이 필드와 동일한 경우, 

    인스턴스 멤버인 필드임을 명시하고자 할때 사용한다.

    cs
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public class Shop{
     
        //필드
        int stock;
     
        //메소드
        void setStock(int stock){
     
            this.stock = stock;
     
        }
     
    }
    cs

    위와 같이 인자값의 변수명과 필드의 변수명이 같아도 

    this를 활용하면 같이 사용이 가능하다.

    위의 코드를 예로 들자면

    this.stock은 필드인 stock을 의미한다.

    즉 this뒤의 변수명은 인수가 아닌 멤버변수(필드)를 의미하는것이 된다.

     

    this.stock 은 멤버 변수의 값

    this.stock = stock; 의 stock은 인자값.

     

    출처:coding-factory.tistory.com/523

    728x90
    반응형

    'JAVA' 카테고리의 다른 글

    Java Map 컬렉션(Collection) 개념  (0) 2021.05.26
    [JAVA] 컬렉션(Collection) 이란?  (2) 2020.11.30
    리스트(List)  (1) 2020.11.30
    Scanner (입력)  (1) 2020.11.25
    [JAVA] 참조형 (Reference)이란?  (0) 2020.11.13

    댓글

Designed by Tistory.