现在的位置: 首页 > 综合 > 正文

接口

2013年09月09日 ⁄ 综合 ⁄ 共 787字 ⁄ 字号 评论关闭

       抽象类时从多个类中抽象出来的模板,如果将这种抽象进行的更彻底,则可以提炼出一种更加特殊的“抽象类”——接口(interface),接口里不能包含普通方法,接口里所有方法都是抽象方法。

       接口定义的是多个类共同的公共行为规范,这些行为时与外部交流的通道,这就意味着接口里通常是定义一组公用方法。各模块之间采用这种面向接口的耦合,从而尽量降低各模块之间耦合,为系统提供更好的可扩展性和可维护性。

       接口定义的是一种规范,因此接口里不能包含构造器和初始化块定义。接口里可以包含属性(只能是常量)、方法(只能是抽象实例方法)、内部类(包括内部接口)和枚举类定义。

        修饰接口的可以是public或者省略。

        因为接口里定义的是多个类共同的公共行为规范,因此接口里所有成员,包括常量、方法、内部类和枚举类都是public访问权限。定义接口成员时,可以省略访问控制符,如果指定访问控制符,只能使用public访问控制符。

      接口里的属性只能是常量,因此系统会自动为这些属性增加static和final两个修饰符。即,在接口定义属性时,不管是否使用public static final ,接口的属性总将使用这三个修饰符来修饰。而且,接口里没有构造器和初始化块,因此接口里定义的属性只能在定义时指定默认值。

       对于接口的方法,只能是抽象方法,因此系统自动回为其增加abstract修饰符;由于接口里的方法全都是抽象方法,因此接口里不允许定义静态方法,即可不是用static修饰接口里的方法。不管定义接口里的方法时是否使用public abstract修饰符,接口里的方法总是使用public abstract来修饰。

       对于接口里的内部类和枚举类,系统都自动使用public static来修饰。

       接口与抽象类的区别:

抱歉!评论已关闭.