
是的,我们可以在 Java 9 的接口中拥有私有方法或私有静态方法。可以使用这些方法来去除代码冗余。 私有方法只能在该界面中有用或可访问。我们无法从一个接口访问或继承私有方法到另一个接口或类。
语法
<strong>interface <interface-name> {
private static void methodName() {
// some statements
}
private void methodName() {
// some statements
}
}</strong>示例
interface Java9Interface {
public abstract void method1();
public default void method2() {
method4();
method5();
System.out.println("Inside default method");
}
public static void method3() {
method5(); <strong>// static method inside other static method</strong>
System.out.println("Inside static method");
}
private void method4() { <strong>// private method</strong>
System.out.println("Inside private method");
}
private static void method5() { <strong>// private static method</strong>
System.out.println("Inside private static method");
}
}
public class PrivateStaticMethodTest implements Java9Interface {
@Override
public void method1() {
System.out.println("Inside abstract method");
}
public static void main(String args[]) {
Java9Interface instance = new PrivateStaticMethodTest();
instance.method1();
instance.method2();
Java9Interface.method3();
}
}输出
<strong>Inside abstract method Inside private method Inside private static method Inside default method Inside private static method Inside static method</strong>











