Ch04 接口
说明
- 1.接口的命名规则与类相同。如果修饰符是public,则该接口在整个项目中可见,如果省略修饰符,则该接口只能在当前包可见。
- 2.接口中可以定义常量,不能定义变量。接口中的属性都会自动用 public static Final 修饰,即接口中的属性都是全局静态常量。接口中的常量必须在定义时指定初始值。
- 3.接口中的所有方法都是抽象方法。接口中都会自动用 public abstract 修饰,即接口中只有全局抽象方法。
- 4.和抽象类一样,接口也不能实例化,接口中不能有构造方法。
- 5.接口之间可以通过extends实现继承关系,一个接口可以继承多个接口,但接口不能继承类。
- 6.接口的实现类必须实现接口的全部方法,否则必须定义为抽象类。
- 7.一个类只能有一个直接父类,但可以通过implements实现多个接口。当类在继承父类的同时又实现了多个接口时,extends关键字必须位于implements关键字之前。
Interface (接口)
本章总结
- 1.接口中的属性都是全局静态常量,接口中的方法都是全局抽象方法,接口中没有构造方法。
- 2.类只能继承一个父类,但可以实现多个接口。一个类如果实现了一个接口,则必须实现接口中的全部方法,否则必须将其定义为抽象类。Java通过接口实现了多重继承的效果。
- 3.接口表示一种约定,接口表示一种能力。接口体现了约定和实现相分离的原则。
- 4.抽象类利于代码复用,接口利于代码维护。
- 5.通过面向接口编程,可以降低代码间的耦合性,提高代码的可拓展性和可维护性。
- 6.面向接口编程意味着:开发系统时,主体架构使用接口,接口构成系统的骨架,这样就可以通过更换实现接口来实现更换系统。
- 7.C#中接口的成员主要是方法和属性。接口中不能包含常量,变量,构造方法和任何静态成员。定义接口时显示指示任何修饰符是非法的。