1、接口:interface关键字
(1)语句定义格式:
interface 接口名{}
(2)接口是如何实现的呢?
接口不能直接实例化,需要一个关键字供其他类实现该接口:implements
使用多态的形式进行实现,由具体的子类进行实例化,其实这是多态的一种,叫做接口多态。
(3)也可以用一个抽象类去实现。
到目前为止,我们学过了三种多态的表现实现:
(1)具体的类中的多态 (最后才是具体类的多态)
(2)抽象类中的多态 (其次是抽象多态)
(3)接口中的多态 (今后大数据开发最常见的是接口多态)
2、接口中成员的特点:
(1)成员变量:
只能是常量,并且是静态的。 JVM在真正运行之前会自动补齐修饰符:public static final
(2)构造方法:
接口中没有构造方法。所以直接实现接口的类都继承Object类,完成构造方法的初始化。
(3)成员方法:
接口中的方法只能是抽象方法。 JVM在真正运行之前会自动补齐修饰符:public abstract
//创建一个接口
interface Animal{
public static final int age = 30; //默认修饰符: public static final,可以不写
// Animal(){ //不能有构造方法
//
// }
public abstract void show(); //默认修饰符: public abstract,可以不写
}
//定义猫类,继承Object类(Object是所有类的父类),实现Animal接口
class Cat extends Object implements Animal{
@Override
public void show() {
System.out.println("猫会跳舞");
}
}
//测试类
public class InterfaceDemo {
public static void main(St