7.1 接口举例
定义:由抽象方法和常量构成的类型,以表示一组类提供的一组相关服务
声明接口:
public interface Instrument extends...{
int i=5; //public static final
void play(); //public abstract
default void print()
}
是多继承的
实现接口: class 类名 implement 接口列表{}
7.3扩展接口
使用extends扩展接口,可同时扩展多个接口
扩展接口中包含被扩展接口的所有方法和常量
方法名相同,但含有不同数量或不同类型的参数 | 子接口有两个名复用的方法,他们有相同的名字和不同的基调 |
基调完全相同 | 子接口有一个此基调的方法 |
两方法仅返回类型不同 | 两个超接口不能同时实现 |
两个方法仅引发的异常类型不同 | 用唯一的实现满足这两种引发的异常类型 |
7.5何时使用接口
. | 相同点 | 不同点 |
接口 | 1.类型 2.不可直接实例化 | 1.可多重继承 2.纯抽象,不涉及实现 |
抽象类 | 1.一个类只能扩展一个另外的类 2.可包含部分实现,可有protected等方法 |