抽象类
当某个类表示一种抽象的概念的时候,new它没有实际意义。所以会考虑将它设置为抽象类。
标识抽象类的方式也很简单,只需要在 class 关键字前面添加 abstract 修饰符即可
abstract class ClassA{
//定义了一个抽象类 ClassA
}
抽象方法
当父类中的某个方法总是会被子类所重写,那么在父类中实现该方法也是没有实际意义的。此时,应该
将该方法声明为抽象方法。
- 将一个方法声明为抽象方法:
- 在返回值类型前面添加关键字 abstarct
- 去掉大括号(意味着抽象方法没有方法体),注意分号不能丢
其它修饰符 abstract 返回值类型 方法名(参数类型 参数名,....);
注意事项:
- 一个抽象类中可以包含所有非抽象的内容
- 一旦一个类中包含了抽象的方法,这个必须声明为抽象类
- 如果一个抽象类中包含了抽象方法,其子类的选择:
- 子类也可以是抽象类
- 子类可以是具体类,必须实现父类的抽象方法,可以选择性重写父类的其他成员方法
- 抽象类照样可以包含构造方法
- 抽象类中的构造方法往往用来数据的存储