概述
Java中不允许一个类同时继承多个类,故而引入接口。接口是在程序的设计阶段被写来专门
用于被继承的。接口存在的意义也就是被继承,被重定义里面的方法。
接口的定义
与类定义相似,关键字是interface;可以把接口理解为特殊的抽象类,在接口中只提供
方法的声明,不提供方法的实现,每个包含接口的类必须实现所有的方法。
规则
*接口中的方法默认都是抽象方法,抽象方法不允许有方法体,方法前面的abstract关键字
可写可不写,抽象方法不能是static的;
*接口中的数据必须都是静态的常量符号,即默认final和static;
*接口没有构造函数;
*接口中的所有内容默认为public,禁止使用protect和private;
interface Printable{
final int MAX = 100;
float sum(float x, float y);
}
class Print implements Printable{
public float sum(float x, float y){
return x+y;
}
}
public class Main{
public static void main(String[] args) {
Print a = new Print();
System.out.println(a.sum(2,3));
}
}
接口的实现
class class-name implements interface-name,......
与普通的重定义一样,在类中实现接口方法时,方法的名字,返回类型,参数的个数及类型
必须与接口中的一致。
如果某个类使用了某个接口,那么这个类应该实现这个接口的全部方法,(可以定义空的方法体),否则该类只能是抽象类;
总结
*接口可以增加很多类都需要实现的功能,不同的类可以使用相同的接口,同一个类也可以
实现多个接口。
*接口只关心功能,并不关心功能的具体实现。
*使用相同的接口类不一定有继承关系,比如商品都需要实现显示商标的功能;
*接口可以多继承其他接口,类可以使用多个接口;