Jos*_*ant 5 java inheritance abstract-class
我真的有两个问题.我试图了解继承如何工作.
如果我有一个要继承的抽象类,并且它有一个未标记为抽象的方法,那么这个方法是否仍然需要在子类中实现?
如果我有一个继承自另一个子类的子类,然后继承自抽象类,那么最低的子类是否需要在抽象类中实现这些方法?或者因为方法已在中间子类中实现,它们不需要再次实现?
谢谢!
Wil*_*ils 13
抽象类是一个声明为abstract的类.它可能包括也可能不包括抽象方法.抽象类无法实例化,但可以进行子类化.
抽象方法是在没有实现的情况下声明的方法(没有大括号,后跟分号),如下所示:
abstract void moveTo(double deltaX, double deltaY);
Run Code Online (Sandbox Code Playgroud)
如果一个类包含抽象方法,则该类本身必须声明为abstract,如:
public abstract class GraphicObject {
// declare fields
// declare non-abstract methods
abstract void draw();
}
Run Code Online (Sandbox Code Playgroud)
当抽象类被子类化时,子类通常为其父类中的所有抽象方法提供实现.但是,如果没有,则子类也必须声明为abstract