一、什么是接口?
1、当一个类中的方法全部都是抽象方法时,可以把该类定义为接口(JDK8.0以上可以在接口中定义Static方法与default方法)
2、定义形式如下:
public interface IFather
// 权限控制符 interface【关键字】 接口名
3、从多态到抽象类再到最后的接口,可以说,接口是多态的一种表现形式;
二、接口的特点
1、接口中的方法和属性;
一、属性
1、接口中定义的变量是通过 public final static 默认修饰的,从上图中通过接口名调用可知其变量类型为static,不可以二次赋值可以看出是常量。
二、方法
1、接口中的方法默认被 public abstract 默认修饰,从上图中 void eat 可以看出
2、在JDK8.0以上的版本中,接口中是允许创建static修饰(无法继承)和default修饰(可以继承)的非抽象方法
2、接口的继承
一、接口可以继承多个接口,而类仅仅可以继承一个类
二、接口不可以继承类
3、接口中类的实现
一、接口必须通过类来实现;且和抽象类的定义相似:一个没有完全实现接口的类必为抽象类
二、类可以实现接口,但是不能继承接口
1、实现的关键字:implements
如图可以看出,一个类可以完成多个接口
三、实现多接口
1、当多个接口中出现相同的方法时,在子类是是实现时仅仅重写一个方法即可
2、当多个接口中出现相同的变量名时,这时需要通过接口名调用;