클래스 변수 연습
class Main {
public static void main(String[] args) {
전사 a전사 = new 전사();
a전사.공격();
// 출력 => 아직 무기가 없습니다.
a전사.a무기 = new 칼();
a전사.공격();
// 출력 => 칼로 공격합니다.
System.out.println(a전사.나이);
a전사.a무기=null;
a전사.공격();
}
}
class 전사{
int 나이;
무기 a무기 ;
void 공격(){
if (a무기 == null) {
System.out.println("아직 무기가 없습니다.");
return;
}
a무기.작동();
}
// 전사의 초기 생성자 설정
전사(){
나이 = 20;
a무기 = new 활();
}
}
abstract class 무기{
abstract void 작동();
}
class 칼 extends 무기{
void 작동(){
System.out.println("칼로 공격합니다");
}
}
class 활 extends 무기{
void 작동(){
System.out.println("활로 공격합니다");
}
}