接口
接口可以理解为一种规则,是对行为的抽象
如何定义一个接口
使用关键词interface定义
public interface 接口名{}
接口不能实例化
接口和类之间是实现关系,通过关键词implements关键字表示
public class 类名 implements 接口名{}
接口的子类(实现类)
要么重写接口中的所有抽象方法
要么是抽象类
接口和类的实现关系,可以单实现,也可以多实现。
public class 类名 implements 接口名1,接口名2{}
实现类可以在继承一个类的同时实现多个接口
public class 类名 extends 父类 implements 接口1,接口2{}
如何使用一个接口
创建接口类,用来对行为进行抽象,谁用谁就实现接口。
接口成员的特点
成员变量
只能是常量
默认修饰符:public static final
构造方法
没有构造方法
成员方法
只能是抽象方法
默认修饰符:public abstract
JDK7以前:接口中只能定义抽象方法
接口和类之间的关系
类跟类的关系
继承关系,只能单继承,不能多继承,但是可以多层继承
类和接口的关系
实现关系,可以单实现,多实现,还可以在继承一个类的同时实现多个接口
接口和接口的关系
继承关系,可以单继承,可以多继承
如果实现类实现了最下面的子接口,就要重写所有的抽象方法