接口
宏观的角度 接口就是规则
微观的角度来说接口就是功能
使用
步骤: 1,定义接口 2,使用接口
定义接口
语法: 访问权限修饰符 interface 接口名{ }
接口中 有什么 1,可以有公共静态常量 接口中的属性默认使用public static final修饰并不能修改
2,接口中可以定义公共静态方法
3,接口中可以定义公共抽象方法 接口中没有方法体的方法默认使用public abstract修饰
public static void s() {
公共静态方法
}
public abstract void a();公共抽象方法等同于 void a();
4,jdk1.8以后可以在接口中定义使用default修饰的普通方法(了解)
不能有什么: 1,不能有普通属性 2,不能有构造函数 3,不能定义普通方法
接口的使用
1接口对接口的使用
关系:多继承(一个接口可以继承多个接口)
语法: 访问权限修饰符 interface 子接口名 extends 父接口名1,父接口名2..{ }
可以继承: 1,子接口继承了父接口的公共静态常量属性
2,子接口可以继承父接口的公共抽象方法
不能继承: 1,子接口无法继承父接口的公共静态方法
2类对接口的使用
关系:多现实(一个类可以实现多个接口)
语法: 访问权限修饰符 class 子类名 implements 父接口名1,父接口名2..{ }
注意: 1,一个类实现多个接口,要么重写所有接口中的抽象方法,要么自己也是抽象类
2,子类继承了父接口的公共静态常量属性,但是不能继承父接口的公共静态方法
3,一个子类对象可以转换为多个实现的接口对象
例子: 动物 狗类 旺财 猫类 布丁 人类 富贵 意味:一个父类下有多个子类 鸟类继承与动物类,实现了飞的接口,实现了叫的接口 意味: 1,鸟类对象可以转换为动物类对象 2,鸟类对象可以转换为飞的接口对象 3,鸟类对象可以转换为叫的接口对象
特殊情况
常量接口: 概念:一个接口中只有定义的公共静态常量 优点: 便于使用,方便修改
函数式接口 概念:一个接口中只有一个抽象方法,不管属性这种接口可以在后期配合Lambda表达式使用,使代码更加简洁,便于书写