抽象与接口
抽象方法
- 只有声明,但没有具体内容的方法
- 抽象方法不能直接被调用,需要重写
声明
与普通方法声明相同,加
abstract关键字abstract 作用域 返回类型 方法名();
抽象类
- 包含抽象方法的类就是抽象类
- 抽象类不能被直接使用,不能被实例化
作用
- 用于告诉子类可以执行哪些操作,但没有规定具体的操作内容。
- 抽象类必须被继承,在子类中重写抽象方法。
- (面向抽象编程)
声明
1 | abstract class 类名{ |
继承
- 抽象类可以继承自抽象类
接口
- 一种特殊的类,只包含全局常量和
public的抽象方法
作用
- 接口可多继承(类只能单继承)
- 确定一个类的功能,面向接口编程
声明
1 | interface 接口名{ |
- 因为接口的所有方法都是
public的抽象方法,因此可省略public abstract关键字
继承
- 接口可继承接口,不可继承抽象类和普通类
- 继承接口需使用implements关键字,并可继承多个接口
- 普通类继承接口时,必须重写接口的所有方法
1 | //声明接口A,包含两个抽象方法:print、area |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 AlMirai!