接口
概念
接口是功能的集合。接口是比抽象更抽象的"类"。在JDK1.8之前接口中只能放抽象方法。
接口的格式:
权限修饰符 interface 接口名{
}
接口中的抽象方法,必须使用public abstrac修饰,可以省略,但是省略后默认还是使用public abstract修饰。
接口中是可以定义变量,但是变量默认会使用public static final 修饰,所以实际上是一个常量。
接口不能够直接实例化。
使用接口需要写一个接口的实现类来实现接口中所有的抽象方法。使用时需要向上造型。
接口中的方法是可以重载的。
类和接口可以做到多实现。如果有多个接口,那么在implems后面通过,分割不同的接口。
接口和接口之间可以做到多继承。
子接口和父接口中可以允许有重名的方法。因为接口中没有方法的实现。
java中类和类的继承关系是树状结构
接口之间是网状结构
public class TestDemo {
public static void main(String[] args) {
int i =20;
//向上造型来创建接口
//接口 接口名 = new 接口的实现类();
MyInter my = new MyInterImpl();
my.show();
}
}
interface MyInter{
//在JDK1.8之前,接口中定义方法必须是抽象方法
public abstract void show();
//接口中定义变量,但是定义的变量其实就是常量
//接口中定义变量的格式:public static final 数据类型 变量名 = 值;
//public static final可以省略,省略后系统默认自动给加上
public static final int i =10;
}
//定义一个接口的实现类来实现MyInter的抽象方法
class MyInterImpl implements MyInter {
public void show() {
System.out.println("接口的实现方法");
}
}