格式如下:(就是将abstract或者default换成ststic即可,带上方法体)
public static 返回值类型 方法名称(参数列表){方法体----}
代码如下:
//定义一个接口
public interface MyInterfaceStatic {public static void methodStatic(){System.out.println("这是接口的静态方法");}
}
//接口的实现类,里面没有抽象方法
public class MyInterfaceStaticImpl implements MyInterfaceStatic {}
//main方法
public class Demo03Interface {public static void main(String[] args) {//创建了实现类对象MyInterfaceStaticImpl impl=new MyInterfaceStaticImpl();//impl.methodStatic();报错,不能通过实现类的对象来调用接口当中的静态方法//直接通过接口名称调用静态方法MyInterfaceStatic.methodStatic();}
}
在上面的代码中,通过实现类的对象来调用接口当中的静态方法程序会报错,说明,调用接口当中的静态方法与抽象方法是不同的。通过接口名称直接调用静态方法(接口名称.静态方法(参数)),就可以直接调用接口当中的静态方法。
可以用再工厂模式中进行构建实现类。