接口
基本介绍
- 接口就是给出一些没有实现的方法,封装到一起,到某个类需要使用的时候,再根据具体情况把这些方法写出来
- 语法
interface 接口名{
属性
抽象方法
}
class 类名 implementd 接口{
自己属性;
自己方法;
必须实现接口的抽象方法
}
- 接口是更加抽象的抽象的类,抽象类里的方法可以有方法体,接口里的所有方法都没有方法体
- 接口体现了程序设计的多态和高内聚低耦合的设计思想
- jdk8以后接口类可以有静态方法,默认方法,也就是说接口中可以有方法的具体实现
注意事项
- 接口不能被实例化
- 接口中所有方法是public方法,接口中抽象方法,可以不用abstract修饰
- 一个普通类实现接口就必须将该接口的所有方法都实现
- 抽象类实现接口,可以不用实现接口的方法
- 一个类同时可以实现多个接口
- 接口中的属性,只能是final的,而且是public static final 修饰符
- 接口中的属性访问方式: 接口名.属性名
- 接口不能继承其他的类,但是可以继承多个别的接口
- 接口的修饰符只能是public 和默认,和类的修饰符是一样的
实现接口与继承类
- 当子类继承了父类,就自动的拥有父类的功能
- 如果子类需要扩展功能,可以通过实现接口的方式扩展
- 实现接口是对Java单继承机制的一种补充
- 继承的价值主要在于解决代码的复用性和可维护性
- 接口的价值主要在于设计好各种规范,让其他类去实现这些方法
- 接口比继承更加灵活
- 接口在一定程度上实现解耦,即接口规范性+动态绑定机制
接口的多态特性
接口详解