private 、 protected 、 static 均不能用来修饰interface。
域或者说常量默认public static final修饰(接口中并且没有变量,只有静态的常量,需要在最开始的时候赋初始值)。
方法默认public修饰,接口中的方法为抽象方法,没有方法主体,。
但是需要注意的是Java8引入了新特性,为了使接口具有更大的灵活性,可以直接实现静态方法
如下:
public interface Service{
static void method(){
System.out.println("111");
}
}
则这种情况是允许的,在实现类中method方法不会被覆盖。
另一种可以可以在接口中实现的方法则是默认方法,使用default修饰符标记,实现类可以选择是否重新接口的默认方法
default void test(){
System.out.println("222");
}
接口中的一切抽象都会在子类中被强迫重写。