public abstract class Bird{
public abstract void sing();
//새마다 내는 소리가 달라 구체적으로 알수 없을 때, abstract 추상 메소드
public void fly(){
System.out.println("날다.");
}// 일반 메소드
}
해당 자녀 추상 클래스도 추상클래스가 됨.
public class Goose extends Bird{
@Override
public void sing() {
System.out.println("꽉꽉!!");
}// 추상 메소드 설정
}
public class GooseExam {
public static void main(String[] args) {
Goose goose = new Goose();
goose.sing();
goose.fly();
//Bird b = new Bird();
// 오류. 스는 부모클래스 역할은 할 수 있으나, 객체로서의 역할은 할 수 없음.
}
}