public class Ex7_10 {
public static void main(String[] args) {
Unit[] group = { new Marine(), new Tank(), new Dropship() };
for (int i = 0; i < group.length; i++)
group[i].move(100, 200);
}
}
abstract class Unit {
int x, y;
abstract void move(int x, int y);
void stop() { /* 현재 위치에 정지 */ }
}
class Marine extends Unit { // 보병
void move(int x, int y) {
System.out.println("Marine[x=" + x + ",y=" + y + "]");
}
void stimPack() { /* 스팀팩을 사용한다. */ }
}
class Tank extends Unit { // 탱크
void move(int x, int y) {
System.out.println("Tank[x=" + x + ",y=" + y + "]");
}
void changeMode() { /* 공격모드를 변환한다. */ }
}
class Dropship extends Unit { // 수송선
void move(int x, int y) {
System.out.println("Dropship[x=" + x + ",y=" + y + "]");
}
void load() { /* 선택된 대상을 태운다. */ }
void unload() { /* 선택된 대상을 내린다. */ }
}
'JAVA > Chapter7' 카테고리의 다른 글
Ch7-38_인터페이스를 이용한 다형성 (0) | 2022.02.19 |
---|---|
Ch7-35_인터페이스(interface) (0) | 2022.02.18 |
Ch7-31_추상 클래스(abstract class) (0) | 2022.02.18 |
Ch7-29_여러 종류의 객체를 배열로 다루기 (0) | 2022.02.17 |
Ch7-27_매개변수의 다형성 (0) | 2022.02.16 |