반응형
250x250
Notice
Recent Posts
Recent Comments
Link
이롭게 현명하게
[JAVA] 자바 인스턴스 멤버와 this 본문
728x90
반응형
<정리>
this : 객체 자신에 대한 레퍼런스
인스턴스(instance) 멤버 : 객체(인스턴스)를 생성한 후 사용할 수 있는 필드와 메소드를 말한다.
인스턴스 필드, 인스턴스 메소드라고 부른다.
인스턴스 필드와 메소드는 객체에 소속된 멤버이기 때문에 객체 없이는 사용할 수 없다.
// Car.java
public class Car {
// 필드
int gas;
// 메소드
void setSpeed(int speed) {
}
}
// Main.java
public class Main {
public static void main(String[] args) {
Car mycar = new Car();
mycar.gas = 10;
mycar.setSpeed(60);
Car yourcar = new Car();
yourcar.gas = 20;
yourcar.setSpeed(80);
}
}
인스턴스 필드는 객체마다 따로 존재하고, 인스턴스 메소드 setSpeed()는 객체마다 존재하지 않고 메소드 영역에 저장되고 공유한다.
객체 외부에서 인스턴스 멤버에 접근하기 위해 참조 변수를 사용하는 것과 마찬가지로 객체 내부에서도 인스턴스 멤버에 접근하기 위해 this를 사용할 수 있다.
자신을 " 나 " 라고 하듯이 객체에서 자신은 "this"라고 한다.
// Car.java
public class Car {
// 필드
int gas;
int speed;
String model;
public Car(String model) {
this.model = model;
}
void setModel(String model) {
this.model = model;
}
// 메소드
void setSpeed(int speed) {
this.speed = speed;
}
void run() {
for(int i = 10;i<=50;i++) {
this.setSpeed(i);
System.out.println(this.model+"가 달립니다.(시속:"+this.speed+"km/h");
}
}
}
// Main.java
public class Main {
public static void main(String[] args) {
Car mycar = new Car("포르쉐");
Car yourcar = new Car("벤츠");
mycar.run();
yourcar.run();
}
}
잘못된 정보는 댓글에 남겨주시면 감사하겠습니다!😊
댓글과 좋아요는 큰 힘이 됩니다!
더보기
[ 참고자료 ]
728x90
반응형
'JAVA' 카테고리의 다른 글
[JAVA] 자바 final 필드와 상수 (0) | 2023.04.21 |
---|---|
[JAVA] 자바 정적 멤버와 static (0) | 2023.04.20 |
[JAVA] 자바 클래스 메소드 (0) | 2023.04.18 |
[JAVA] 자바 클래스 생성 (0) | 2023.04.14 |
[JAVA] 자바 클래스 필드 (0) | 2023.04.13 |
Comments