--- title: Java SE笔记: 接口 date: 2016-08-08 21:40:00 updated: 2016-08-08 21:40:00 description: "接口" categories: [个人笔记] tags: [Java, Java SE笔记] --- > - 编程一定要面向抽象编程,这样可以使程序耦合度降低,可扩展能力增强! > - 接口作用: > 1. `可以使项目分层,所有层都面向接口开发,开发效率提高了。` > 2. `接口使代码和代码之间的耦合度降低,就像内存条和主板的关系,变得“可插拔”。可以随意切换。` > - `接口和抽象类都能完成某个功能,优先选择接口。` > - `因为接口可以多实现,多继承。(如果没有这一点,那么抽象类能实现的功能比接口要多!就因为这一点,抽象类比不上接口)` > - `并且一个类除了实现接口之外,还可以去继承其他类(保留了类的继承)。` > - `接口在运行时也会生成class文件!` > - 接口也是一种引用类型,可以等同看做类. 1. 如何定义接口,语法: [修饰符] interface 接口名{} 2. 接口中只能出现:常量、抽象方法 - 常量(必须用public static final修饰)//`public static final是可以省略的.` - 抽象方法(接口中所有的抽象方法都是public abstract)`public abstract是可以省略的.` 3. `接口其实是一个特殊的抽象类,特殊在接口是完全抽象的。` 4. 接口中没有构造方法,无法被实例化。 5. 接口和接口之间可以多继承。 6. 一个类可以实现多个接口。(这里的“实现”可以等同看做“继承”) 7. `一个非抽象的类实现接口,需要将接口中所有的方法“实现/重写/覆盖”.`