1. 미완성된 클래스
: 미완성된 메서드를 가지고 있다.
2. 추상메서드
: 미완성된 메서드이다.
: 메서드는 선언부와 구현부로 이루어져 있지만 추상메서드는 구현부가 없다.
3. 추상클래스를 상속 받는 자손 클래스는 조상의 추상메서드를
상황에 맞게 적절히 구현해주어야 한다.
//1. 추상클래스가 되는 방법 : 추상메서드를 가지고 있음으로 추상클래스로 변경
abstract class Unit{ // 추상 클래스
int x;
int y;
abstract void move(int x, int y);
//2. 추상메서드는 구현부가 없으므로 괄호 대신 문장의 끝을 알리는 ';'을 적어준다.
void stop(){ }
}
//2. 추상메서드를 구현하는 방법
class Marine extends Unit{
void stimpack(){}
//3.추상클래스 Unit으로부터 상속받으면 자손클래스 Marine은 오버라이딩을 통해
// 조상인 추상클래스 Unit의 추상메서드를 모두 구현해주어야 한다.
@Override
void move(int x, int y) { // 조상클래스에서 상속받은 move추상메서드
// TODO Auto-generated method stub
}
}
class Tank extends Unit{
void changeMode(){}
@Override
void move(int x, int y) {
// TODO Auto-generated method stub
}
}
class DropShip extends Unit{
void load(){}
@Override
void move(int x, int y) {
// TODO Auto-generated method stub
}
}