接口:
如果一个类定义时全部由抽象方法和全局变量组成,那么这种类就称为接口。
抽象方法只有方法声明,而没有方法体,即没有实现细节。抽象方法使用abstract修饰;
全局变量,默认使用static和final修饰,又称为接口中的域。
使用关键字interface(而不是class)定义一个接口。
接口使抽象的概念更深入了一层,可将其想象为一个“纯”抽象类
1.不能对接口直接进行对象的实例化操作;
2.接口中只有全局常量,没有成员变量,所以接口中不能有构造方法;
3.接口的实现类使用implements关键字实现接口;
4.接口的实现类(如果不是抽象类)必须重写接口中所顶一顶全部抽象方法;
5.一个接口可以继承扩展多个父接口;
6.一个类可以实现多个接口
7.利用接口的子类,采用对象的向上转型方式,进行接口对象实例化操作。
java中的接口类似于日常生活中接口的作用:
java中的接口规定了很多类都需要具有的功能,不同的类(不一定有继承关系)可以实现相同的接口,同一个类也可以实现多个接口。
接口只关心操作,并不关心操作的具体实现,我们可以把主要精力放在程序设计上,而不必拘泥于细节的实现
通过在接口中声明若干个抽象方法,表明这些方法的重要性,方法体的内容细节由实现接口的类去完成。
接口可以实现与类的多重继承同样强大的功能,一个接口可以继承自多个父接口,一个类可以实现多个接口。
接口实现
class 类名 implements 接口名 {
// 重写接口中抽象方法【必须】
// 重写接口中默认方法【可选】
}