接口使用

接口是一种完全抽象的引用类型,接口的成员只有静态常量和抽象方法两种,没有非抽象方法,也没有其他。相当于一种严格的交流标准

 (同超类子类一样,接口及实现类中,方法覆盖时的访问权限不能降低

接口实现:如果子类实现了接口中的所有抽象方法,则该类可以声明为非抽象类,也可以声明为抽象类;

              如果子类部分实现了接口中的抽象方法,则该类只能声明为抽象类,

这一点和抽象类及其实现子类类似。

重要声明:接口支持多重继承,类只支持单重继承;

              一个类可以实现多个接口,也有“多重继承”的效果,但还是不一样;

接口实例展示:

接口声明:

接口声明用 interface 关键字;

接口支持多重继承,如下所示

接口成员变量声明:

接口成员变量的默认修饰为 public static final,这三个修饰符都可以省略不写;

接口成员变量必须在声明时进行初始化,如下所示;

接口方法声明:

接口中方法的默认修饰符为 public abstract,且修饰符只能为同时包含这两个,这两个修饰符可以省略不写;

 

接口的实现类:

通常形式: class 类名 extends 直接超类名 implements 接口名1 , 接口名2 , 接口名3 {}

注意事项:

    和类继承类似,如果实现类中实现了所有接口的所有抽象方法,则该实现类可以声明为非抽象类,当然也可以声明为抽象类;

                        如果实现类中没有实现所有的抽象方法,则该实现类只能声明为抽象类。

    和类继承类似,实现接口意味着实现类继承了所有接口中的静态常量和抽象方法。静态常量可以直接访问,也可以通过接口名来访问(以防不同接口中有相同的静态常量名)

 

原文地址:https://www.cnblogs.com/maxiaoshuai/p/5401080.html