1、接口的概念
接口是多个类的公共规范;
接口是一种引用数据类型,最重要的内容就是接口当中的 抽象方法。
2、接口的定义格式
public interface 接口名称{
接口内容(即各种方法)
}
注意: 接口定义的关键字是interface,但是在程序编译时一样是由.java文件编译为.class文件
3、接口所能拥有的方法类型
此点需结合java版本进行理解,主要分为java7、java8、java9。
(1)、java7:接口能够包含常量和抽象方法 两种
(2)、java8:接口能够包含常量、抽象方法、默认方法和静态方法 四种
(3)、java9:接口能够包含常量、抽象方法、默认方法、静态方法和私有方
法 五种
4、接口的抽象方法
由于无论哪个版本的 java,接口都能够定义抽象方法;所以这边特别注意接口的抽象方法。
(1)、定义格式:
public abstract 返回值类型 抽象方法名称(参数列表);
(2)、注意事项:
1)、接口中抽象方法修饰词固定为 public abstarct
2)、接口中抽象方法修饰词 public abstarct 均可以省略(也可以只省略其
中一个)
5、接口中的成员变量
注意: 接口中也可以定义成员变量,但是需要保证修饰词为 public static final (接口的成员变量,其实就是接口的 常量 )
(1)、定义格式:
public static final 数据类型 数据名称 = 数据值;
//由于接口的成员变量都是用final修饰,说明不可变,所以接口的成员变量其实就是其常量;
//并且在定义成员变量时必须进行赋值,否则报错
(2)、注意事项:
1)、成员变量的修饰词 public static final 均可以省略(也可以只省略其中1、2
个);但省略与否,其修饰词都是这 3个
2)、接口中的成员变量必须在定义时就对其赋值,一旦赋值就 无法修改
3)、接口的成员变量名称(即接口的常量名称),推荐全部大写,多词意时
用“_”分隔开
6、接口的小结
7、接口的注意事项
(1)、接口是没有 静态代码块 和 构造方法 的
(2)、一个类的父类只能有一个,却可以实现 多个接口 ,接口之间用“, ”分隔开
(3)、接口实现的关键字是 implements
(4)、如果实现类实现了多个接口,多个接口之中有重复的 抽象方法 ,只需覆盖
重写一次即可
(5)、接口的实现类要么就全部重写接口的方法,要么就是一个抽象类
(6)、如果实现类实现了多个接口,多个接口之中有重复的 默认方法 ,那么实现
类一定要对冲突的默认方法进行覆盖重写(并且需要带着 default 关键字)
(7)、如果一个类的直接父类当中有方法,与所实现接口中的默认方法重复, 优先
使用直接父类的方法
(8)、类与类之间是单继承的,一个类的直接父类只能有一个;
类与接口之间是多实现的,一个类的直接父接口可以有多个;
接口与接口之间也是多继承的;