只能是常量,并且是静态的 它里面给成员变量的默认修饰符是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); } }