接口可以规定方法的原型:方法名、参数列表以及返回类型,但不规定方法主体;
可以包含基本数据类型的数据成员,但他们都默认为static和final。
接口可以认为是一个纯抽象类,即里面的每一个方法都是抽象的没有方法主体;
接口的作用:
继承多个设计。(多个需要实现的方法)
建立和类之间的“协议”
>将类根据其实现的功能分组用接口代表,而不必顾虑它所在的类继承层次;这样可以最大限度地利用动态绑定,隐藏实现细节;
>实现不同类之间的容量共享;
接口的语法:
接口修饰符 interface 接口名称 extends 父接口
接口的数据成员一定要有初值,因为默认为public static final,可以省略;
接口中的方法必须是“抽象方法”,默认为 public abstract ,可以省略;
实现接口:
语法:
class 类名称 implements 接口名称
注意:
>必须实现接口中的所有方法;
>来自接口的方法必须声明称public;(因为接口中的方法默认为public,实现时也只能时public)
实现多个接口的方法:
一个类可以实现多个接口,这种机制可实现对设计的多重继承。
语法:
class 类名称 implements 接口1,接口2''''';
接口的扩展:
实现一个接口的类也必须实现其超接口。
interface 子接口 extends 超接口1,超接口2‘’‘’‘;
注意:
子接口扩展了原本的接口之后,类实现子接口时,需要将子接口扩展的抽象方法和父接口的抽象方法都要实现;
接口通过继承多个类,来对这些类中的特定相似行为做出统一的规划;
因为继承的缘故,这些类的元素在接口中也存在所以可以做出一些特定的操作;(接口中的抽象方法)
两个不相干的类具有相似的功能,将这些功能通过接口划分到一个组;