文章目录
- 1. 接口的定义与特点
- 1.1 定义格式
- 1.2 用法
- 1.2.1 接口与类之间的关系
- 1.2.2 接口与接口之间的关系
- 1.2.3 JDK8之后的接口
- 2. 接口的注意事项
1. 接口的定义与特点
接口是一种规范,规范一定是公开的
1.1 定义格式
//接口用关键字interface来定义
public interface 接口名{
//常量
//抽象方法
}
//案例
public interface InterfaceDemo{
//1.常量
public static final String NAME = "接口";
//2.抽象方法
//注意:接口体现规范思想,所以publice abstract可以省略不写
public abstract void run();
}
1.2 用法
1.2.1 接口与类之间的关系
接口是用来被实现的,实现接口的类称为实现类。实现类可以理解成所谓的子类。
注意: 一个类实现接口,必须重写接口的全部抽象方法,否则这个类就被定义成抽象类。
修饰符 class 实现类 implements 接口1,接口2,接口3,...{
...
}
1.2.2 接口与接口之间的关系
接口与接口之间是多继承关系。
1.2.3 JDK8之后的接口
默认方法:
- 类似于普通实例方法,必须用default修饰
- 默认用public修饰,需要用接口的实现类的对象来调用
**静态方法: **
- 默认会public修饰,必须static修饰
- 接口的静态方法必须用本身的接口名来调用
私有方法:
- 私有的实例方法,必须用private修饰,从JDK1.9之后开始
- 只能在本类中被其他的默认方法或者私有方法访问
2. 接口的注意事项
- 接口不能创建对象
- 一个类实现了多个接口,多个接口中有同样的 静态方法 不冲突,接口的静态方法只能自己调用。
- 一个类实现了多个接口,多个接口中存在同名的 默认方法 ,不冲突,重写该方法即可。
- 一个类继承了父类,同时又实现了接口,父类和接口中都有同名方法默认用父类的。
- 一个接口继承多个接口是没问题的,如果多个接口中存在规范冲突则不能多继承。