1-接口定义
【修饰符列表】 interface 接口名{}
2-接口之间支持多继承
注:接口之间在进行强制类型转换时,即使没有继承关系也可以强转(编译器不会报错),但在运行期间可能会出现ClassCastException异常。
上述例子编译和运行都没问题
上述例子编译没问题,但运行有问题
所以向下转型建议养成使用关键字instanceof的习惯,这样可以避免这种情况的异常
3-接口中只包含两部分内容,公开的常量和抽象方法,此外常量和抽象方法相对应的 public static final和public abstract 修饰符可以省略
4-类可以实现多接口,这弥补了Java中类与类之间只能单继承带来的缺陷