1.对接口的认识
①概念性的接口,即指系统对外提供的所有服务。类的所有能被外部使用者访问的方法构成了类的接口。
②指用interface关键字定义的实实在在的接口,也称为接口类型。它用于明确地描述系统对外提供的所有服务,它能够更加清晰地把系统的实现细节与接口分离。
2.接口的特征
在接口中:
①成员变量默认且指能都是public,static,final类型的;
②方法默认都是public,abstract类型的;
③在JDK8以前的版本,接口只能包含抽象方法。从JDK8开始,允许在接口中定义默认方法和静态方法;
④接口没有构造方法,不能被实例化;
⑤一个接口不能实现另一个接口,但它可以继承多个其他接口。
3.比较抽象类和接口
相同点:
①都不能被实例化;
②都能包含抽象方法。
不同点:
①在接口中的成员变量只能是public,static,final类型的,而在抽象类中可以定义各种类型的实例变量和静态变量。
②一个类只能继承一个直接的父类;但一个类可以实现多个接口。
③抽象类是最大程度的抽取子类的共性,而接口是规范类的开发。