인스턴스 멤버

객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드를 말하며
이들을 각각 인스턴스 필드, 인스턴스 메소드라고 한다.

 

지금까지 작성한 필드와 메소드들이 인스턴스 멤버들인 셈이다.

인스턴스 멤버들은 객체에 소속된 멤버이기 때문에 객체 없이는 사용할 수 없다.

 

우선 인스턴스 멤버들(필드와 메소드)을/를 만들어보자.

 

인스턴스 멤버, 전에 했던 필드와 메소드 활용하여 mine / yours 만들기

이 때

인스턴스 필드 gas는 객체마다 따로 존재하나, 

인스턴스 메소드 setSpeed()는 객체마다 존재하지 않고 메소드 영역에 저장되고 공유된다.

 

객체 외부에서 인스턴스 멤버에 접근하기 위해 참조 벼수를 사용하는 것고 마찬가지로

객체 내부에서도 인스턴스 멤버에 접근하기 위해 this를 사용한다. 

 

우리가 본인 스스로를 '나'라고 하듯이 객체는 자신을 'this'라고 한다.

즉, this.model은 자신이 갖고 있는 model 필드를 의미한다.

 

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

인스턴스 멤버인 필드임을 명시할 때 사용된다.

 

 


[보충지식]

 

 

 

+ Recent posts