变量必须public static final(final则必须有初始值)
方法必须public abstract(抽象就不是静态)
java8新增
public interface IUser {
static void say() {//静态方法,必须public,不会被继承,不然如果继承2个接口都有相同方法,不知道继承哪个(变量可以继承,但也会出现上述问题,所以方法避开了这个坑)
System.out.println("say_");
}
default void eat() {//默认方法,必须public
System.out.println("eat_");
}
}
public class Student implements IUser {
public static void main(String[] args) {
IStudent.say();//静态方法
Student student = new Student();
student.eat();//默认方法
}
}