<this>

- 변수를 정의하고, 생성자를 만든다.

- 생성자를 호출한다.

- new로 heap 영역이 생기면서 해당영역에 class가 띄어진다.

- AirPlane의 Stack 영역이 실행된다.
- 실행 후 값이 사라지면 안되기 때문에 this에 저장한다.
- 생성자는 최초의 객체가 생성될 때 만들고, 그 후에 변화가 있을 때는 this를 사용한다.
<행동 - 책임>
package ch04;
class Rabbit { //heap변수, 전역변수, 맴버변수, 필드, 속성, 프로퍼티
private String name;
private int power;
public Rabbit(String name, int power) {
super();
this.name = name;
this.power = power;
}
// 행동(책임)
boolean drink() {
// 100이 넘어가면 동작하지 않도록!!
if (power == 100) {
return false;
}
power++;
return true;
}
public int getPower() {
return power;
}
void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
public class RabbitApp {
public static void main(String[] args) {
Rabbit r1 = new Rabbit("토끼", 20); // 100이 맥스
while (r1.drink()) {
}
System.out.println(r1.getPower());
// 이름 변경
r1.setName("산토끼");
System.out.println(r1.getName());
}
}
- public은 프로젝트 내 모든 패키지에서 접근이 가능하나,
private을 선언할 경우 클래스 내부에서는 접근 가능하지만 다른 클래스에서는 접근이 불가능하다.
'Java programing > 프로그래밍 언어 활용' 카테고리의 다른 글
Java - 상속, 추상클래스(abstract) 1 (0) | 2020.03.30 |
---|---|
Java - 오버로딩 (0) | 2020.03.27 |
Java - 객체지향프로그램 (클래스와 객체), 생성자 (0) | 2020.03.27 |
Java - String, equals, StringConstantPool (0) | 2020.03.23 |
Java - for문을 이용해 직각삼각형 만들기 (0) | 2020.03.23 |