一、接口概念:
所谓接口就是对类自身功能的扩展,接口代表可一种扩展的能力
二、特点:
1、接口必须使用interface关键字表示:格式 interface接口名 {}
2、接口的实现使用implements:格式 class 类名 implements 接口名 {}
3、接口不能实例化:想要实例化,就要按照多态的方式,由具体的子类实例化。其实这也是多态的一种,接口多态
4、接口的实现类:要么是抽象类。要么重写接口中的所有抽象方法
三、成员特点:
1、成员变量:只能是常量,默认修饰符:public static final
2、构造方法:没有构造方法
3、成员方法:只能是抽象方法:默认修饰符: public abstract
四、类与接口
类与类:继承关系,只能是单继承,可以多(层)重继承
类与接口:实现关系,可以单实现,也可以多实现,还可以在继承一个类的同时实现多个类
接口与接口:继承关系,可以单继承,也可以多继承
五、接口与抽象类
A:成员区别
抽象类:
成员变量:可以是变量,也可以是常量
构造方法:有构造方法
成员方法:可以是抽象方法,也可以是非抽象方法
接口:
成员变量:只能是常量。默认修饰符 public static final
成员方法:只能是抽象方法。默认修饰符 public abstract
B:关系区别
类与类:
继承关系。只能单继承,可以多层(重)继承。
类与接口:
实现关系。可以单实现,也可以多实现。
还可以在继承一个类的同时实现多个接口。
接口与接口:
接口与接口:
继承关系。可以单继承,也可以多继承。
C:设计理念区别
抽象类被继承体现的是:"is a"的关系。抽象类定义的是共性功能。
接口被实现体现的是:"like a"的关系。接口定义的是扩展功能。