언어/자바
static - 핵심
공부하고 기록하고 다시보는 블로그
2025. 5. 29. 17:18
- static은 new보다 먼저 생성된다.
- 아직 생성하지도 않았는데, static 메서드에 맴버변수를 선언하면, 순서때문에 에러가 발생한다.
- static 변수도 일반 메서드에 생성할 수 없다.
public static void main(String[] args) {
_08_Person p1 = new _08_Person();
p1 = new _08_Person("운동");
//p1.setKind("운동");
personMove(p1);
p1 = new _08_Person("독서");
//p1.setKind("독서");
personMove(p1);
p1 = new _08_Person("잠");
//p1.setKind("잠");
personMove(p1);
}
// Call by Reference
// static 메서드끼리
public static void personMove(_08_Person person) {
if(person.getKind() == "운동"){
person.excersize();
} else if (person.getKind() == "독서") {
person.readBook();
} else {
person.sleeap();
}
}
-> 방법 2가지
1. 자기 자신 new 해서 주소로 주소 접근
2. static으로 같은 레벨/static은 new 보다 먼저 생성된다.