接口成员的特点
成员变量:
只能是常量,并且是静态的 它里面给成员变量的默认修饰符是public static final 建议:手动全部补齐
构造方法:
接口中没有构造方法
成员方法:
接口中的成员方法只能是抽象方法,没有方法体,连大括号都没有 它会自动补充修饰符:public abstract 建议:手动全部补齐
interface Inter{
public static final int a = 10;
public static final int b = 20;
// Inter(){}
//Error:(20, 22) java: 接口抽象方法不能带有主体
// public void fun(){
// System.out.println("玩游戏");
// }
public void fun();
}
//虽然接口中没有构造方法,但是多态初始化的时候要先初始化子类再初始化父类
//这里其实继承了一个父类
//java中所有的类都默认继承一个类:Object
//每一个class都有Object作为超类
//那么所有继承Object类的实现对象都实现了这个类中的方法
class Demo1 extends Object implements Inter{
@Override
public void fun() {
System.out.println("玩游戏2");
}
}
public class InterfaceDemo2 {
public static void main(String[] args) {
Inter i = new Demo1();
//Error:(24, 10) java: 无法为最终变量a分配值
// i.a = 100;
System.out.println(i.a);
// System.out.println(Inter.a);
}
}