介绍
接口主要用来描述类具有的功能,对类的一组需求描述,并不给出每个功能的具体实现,而这些类要遵从接口描述的统一格式定义
一个类可以实现多个接口
特性
- 1.接口也可以被扩展,像继承一样(可以从多条具有较高通用性的接口到较高专用性接口的链)
- 2.接口中所有方法自动的属于public,因此在接口中声明方法时不必提供关键字public,但是实现的时候必须写上public
- 3.接口的域自动为
public static final
接口实现步骤
- 定义:
public interface Xxxxx{xxxx}
- 1.将类声明为实现给定的接口(implements)
- 2.对接口的所有方法进行定义
接口中的方法
静态方法
用途:可以不再需要为接口的实用工具方法专门提供一个伴随实现类,只需要直接在接口中实现静态的方法即可
默认方法
可以为接口方法提供默认实现,必须用default修饰符标记这样一个方法,这样就可以方便的定义实现时默认的方法了
- 默认方法冲突问题
- 1.超类优先(级超类提供了一个具体方法和接口有相同参数和名字,则超类实现方法优先)
- 2.接口冲突(如果两个接口提供了参数和名字一样的方法,则需要覆盖这个方法
常用方法
- 可以使用instanceof检查一个对象是否实现了一个接口
if(anObject instanceof Comparable){......}
注意
- 1.接口中可以定义常量
- 2.绝对不能含有实例域