this란?
한 마디로 객체 자신을 가리키는 키워드!!
실제 코드로 this가 어떻게 사용되는지 보는게 더 빠릅니다!!
11번 라인을 보시면 this.name = name; 이라고 해서 this라는 키워드를 사용했습니다.
저기서 this.name은 Person클래스의 멤버변수 name을 가리킵니다.
이클립스에서는 this를 사용하니 색상으로도 name이 Person클래스의 멤버변수를 가리킨다는 것을 쉽게 알 수 있겠네요.
그러면 11번라인에서 this를 제거하면 어떻게 될까요?
제거해 보시면 오류는 안나실꺼에요.
하지만 어떤게 멤버변수인가요..?
이 경우는 지역변수 name에 name의 값을 넣는...?
결국은 자기 자신에게 대입을 한 것 입니다.
이렇게 멤버변수의 이름과 메소드의 매개변수의 이름이 같을 경우에 this를 사용하시면 됩니다.
생성자에서 this를 이용해 같은 클래스내의 생성자 끼리 호출을 할 수도 있습니다.
7번라인의 PersonDemo생성자에서 오버로딩한 PersonDemo생성자를 호출합니다.
이렇게 같은 클래스 내의 생성자들을 서로 호출하게 하여 유기적으로 연결해 주면 더 좋은 코드를 얻을 수 있다고 해요.
이상 this에 대해 알아 보았습니다~^^
'프로그래밍 > Java' 카테고리의 다른 글
[Java] 17. 오버라이딩(Overriding) (0) | 2015.04.21 |
---|---|
[Java] 16. 상속(Inheritance) (0) | 2015.04.08 |
[Java] 14. 생성자(Constructor) (0) | 2015.03.28 |
[Java] 13. 메소드 오버로딩(Method Overloading) (0) | 2015.03.21 |
[Java] 12. 클래스변수 / 인스턴스변수 / 지역변수 (8) | 2015.03.20 |