确定选对了书吗?基本概念还是尽量看书好:https://www.xoobooks.com/book/core-java-volume-i-fundamentals-10th-edition/
要学会用搜索引擎,
Abstract classes may or may not contain abstract methods, i.e., methods without body ( public void get(); )
But, if a class has at least one abstract method, then the class must be declared abstract.
If a class is declared abstract, it cannot be instantiated.
To use an abstract class, you have to inherit it from another class, provide implementations to the abstract methods in it.
If you inherit an abstract class, you have to provide implementations to all the abstract methods in it.
abstract class为Java语言中用于定义抽象类的一种方法
抽象类不可生成对象,必须被继承使用。
如果一个类中出现了抽象方法,那么这个类一定为一个抽象类。 但是,如果一个类为抽象类,那么其中可能有非抽象的方法也可能没有。
当abstract用于修饰方法时,该方法为抽象方法,此方法不能有实现(方法体),实现留给子类覆盖,子类必须实现父亲的所有抽象方法,否则此子类也只能是抽象类。
static与abstract不能同时使用。
用static声明方法表明这个方法在不生成类的实例时可直接被类调用,而abstract方法不能被调用,两者矛盾。
Why can't static methods be abstract in Java
https://stackoverflow.com/questions/370962/why-cant-static-methods-be-abstract-in-java
Final和abstract永远不会同时出现。
https://stackoverflow.com/questions/9618583/java-final-abstract-class