接口的成员特点
- 成员变量:只能是常量并且是静态的并且是公共的
* 默认修饰符:public static final 三个关键字可以互相交换位置
* 建议:自己手动给出 - 构造方法:接口没有构造方法
成员方法:只能是抽象方法
* 默认修饰符:public abstract
* 建议:自己手动给出class Demo02_Interface { public static void main(String[] args) { Demo d = new Demo(); d.print(); System.out.println(Inter.num); } } /* * 成员变量;只能是常量,并且是静态的并公共的。 * 默认修饰符:public static final 三个关键字可以互相交换位置,没有顺序。 * 建议:自己手动给出。 * 构造方法:接口没有构造方法。 * 成员方法:只能是抽象方法。 * 默认修饰符:public abstract * 建议:自己手动给出。 */ //接口为公共的,所以所有的成员变量和成员方法都是public的 interface Inter { public static final int num = 10; //错误:需要<标识符> //public Inter(){} 接口中没有构造方法 //错误:接口中不能定义非抽象方法 /*public void print() { }*/ public abstract void print(); } class Demo /*extends Object*/ implements Inter { //一个类不写继承任何类,默认继承Object类 //错误:Demo中的print()无法实现Inter中的print(),正在尝试分配更低的访问权限:以前为public public void print() { //错误:无法为最终变量num分配值 //num = 20; System.out.println(num); } public Demo() { //接口是干爹,人家有自己的亲爹 //这个super是访问自己的Object中的构造方法 super(); } }