- abstract类只能用来派生子类,不能用来创建abstract类的对象。
- abstract类不能与final同时修饰一个类,因为用final修饰的类不能被继承,而abstract类就是被用来继承的。
- abstract类定义中可以没有abstract方法。
- abstract方法必须在abstract类或接口中。
- 含有abstract方法的类必须定义为abstract class。
- abstract类中可以有private的成员,但最好不要有private,因为私有和抽象放在一起,子类如果想要重写父类的私有方法是根本继承不过来,也就无法重写。
- 抽象类不能被实例化(类名对象名= new 类名(参数1,参数2...参数n)),因为有抽象方法未实现。
- abstract只能修饰类和方法,不能修饰字段。
- 抽象方法不能有方法体,也就是不能有这个{}.
- 抽象类中可以有构造方法,
- 抽象类中可以存在普通属性,方法,静态属性。
- 如果一个类中有一个抽象方法,那么当前类一定是抽象类;而抽象类中不一定有抽象方法。
- 抽象类中的抽象方法需要子类去实现,如果子类不实现,则子类也需要定义为抽象的。