使用关键字interface用来定义一个接口:
interface Printable{
final int max = 100; //常量成员只能用public static final修饰,寓意着不可改
void add();//方法一般用public abstract 等修饰,一般省略不写
float sum(flaot x,float y);
}
接口体中包含常量的声明(注意没有变量)和抽象方法组成
==》接口中的方法都是没实现的,是抽象类的拓展
接口由类来实现一百年使用接口中的方法,用关键字implements
class A implements Pritable
{
A(){}
void add();
public float sum(float x,float y){}
}
==》实现类必须实现接口方法-------若一个类声明实现一个接口但是没有实现接口中的所有方法,这个类必须是抽象类
接口中的一个重要应用:接口回调
把实现某个接口的类创建的对象的引用 赋值给该接口的 接口变量,那么改变量就可以调用被类实现的接口方法
==》可以理解为java中的上转型对象