看接口之前,我们先看看抽象类,他是普通类和接口之间的一种中庸之道。
包含抽象方法的类是抽象类,抽象方法的定义:abstract void f(); 类强制是用abstract修饰。
抽象类不能被实例化,可以被继承。导出类(子类)必须覆盖原抽象类的所有抽象方法,否则导出类也是抽象类。
抽象方法其实就是定义 的接口。
接口:就是一种完全抽象的类,所有的方法都是抽象方法。
接口的定义方式:
[修饰符] interface 接口名 [extends 父接口名列表]{
[public] [static] [final] 常量;
[public] [abstract] 方法;
}
最简单的定义:其他的都是默认值。
interface Instrument{
void play(Note e);
void adjust();
}