1.接口定义:
接口可以看作一种特殊的“抽象类”,但是采用与抽象类完全不同的语法来表示,两者的设计理念也是不同的,抽象类利于代码复用,接口利于代码的扩展和维护。
2.语法 :
[修饰符] interface 接口名 extends 父类接口1,父类接口2,......{
//常量定义
//方法定义
}
class 类名 extends 父类名 implements 接口1,接口2,......{
//类成员
}
3.示例代码:
public interface UsbInterface {
/**
* USB接口提供服务
* */
void service();
}
/**
* U盘
* */
public class UDisk implements UsbInterface {
public void service() {
System.out.println("连接USB口");
}
}
使用关键字interface来创建接口,使用关键字implements来实现接口;
4.注意:
1.接口的命名规则与类相同。如果修饰符是public,则该接口在整个项目中可见,如果省略修饰符,则该接口只在当前包中可见。
2.接口中只能定义常量,不能定义变量。接口中的属性会自动用public static final修饰,所以接口中的属性都是全局静态常量。并且必须要初始化,也就是要赋值。
3.接口中所有的方法都是抽象方法,会自动用public abstract 修饰,所以接口中的方法 全部都是全局抽象方法。
4.接口和抽象类一样,接口也不能被实例化,接口中不能有构造方法。
5.类只能继承一个父类,但可以实现多个接口,如果实现了一个接口,就必须要实现接口中的全部,否则必须将哪个类定义为抽象类