当一个抽象类中的所有方法都是抽象方法时,那么这个抽象类就可以使用另外一种接口这种机制来
体现。
interface class Demo{ //定义一个接口
abstract void show(); //定义变量
}
接口最重要的体现:解决多继承的弊端。将多继承这种机制在java中通过多实现完成了
interface A{
void show1();
}
interface B{
void show2();
}
class C implements A,B{
public void show1(){}
public void show2(){}
}
接口多继承
多个接口之间可以使用
extends
进行继承。
interface A{
void show();
}
interface B{
void show1();
}
interface C{
void show2();
}
interface D extends A,B,C{
void show3();
}
接口中成员的特点
1.
接口中可以定义变量,但是变量必须有固定的修饰符修饰,
public static final
所以接口中的变
量也称之为常量。
2.
接口中可以定义方法,方法也有固定的修饰符,
public abstract
3.
接口中的成员都是公共的。
4.
接口不可以创建对象。
5.
子类必须覆盖掉接口中所有的抽象方法后,子类才可以实例化。否则子类是一个抽象类
.
接口的好处
1.
接口的出现扩展了功能。
2.
接口其实就是暴漏出来的规则。
3.
接口的出现降低了耦合性,即设备与设备之间实现了解耦。
接口与类的相似点:
1.接口也可以定义多个方法
2.接口文件保存在 . java结尾的文件中,文件名使用接口名
3.接口的字节码文件保存在 . class结尾的文件中
4.接口相应的字节码必须在与包名称相匹配的目录结构中
接口与类的区别:
1.接口不能用于实例化对象
2.接口没有构造方法
3.接口中所有的方法必须是抽象方法
4.接口中不能包含成员变量,除了 static 和 final 变量
5.接口不是被继承,而是被实现
6.接口支持多继承
接口与抽象类的区别: