我有一个问题我有一个抽象的父类,孩子不是抽象的,也没有覆盖方法,但孩子的孩子有它 Java给了我一个错误信息,我可以做些什么来使第一个孩子抽象而不添加重写方法?
这是父母:
public abstract class MobileDevice {
public abstract void display();
} //end class
这是第一个孩子:
public class MobileComputer extends MobileDevice {
public MobileComputer(String b, double s) {
super(b,s);
} //end cons
} //end class
这是第二个孩子“孩子的孩子”:
public class TabletComputer extends MobileComputer {
public void display() {
System.out.println("");
}
} //end class
答案 0 :(得分:3)
您有三个主要选项:
MobileComputer
抽象,这意味着您不需要在该类中实现该方法MobileComputer
中实施该方法,但将其留空,或者让它抛出java.lang.UnsupportedOperationException
之类的例外。Displayable
方法创建一个名为display()
(或其他内容)的界面,只有TabletComputer
实现它。答案 1 :(得分:0)
如果要扩展任何抽象类,则必须实现其所有抽象方法或将该类声明为抽象类。
将MobileComputer
声明为抽象或实现display()
方法(空方法也可以接受,因为它至少会删除编译错误)。