在Java 9中,接口中的私有方法有哪些规则?
Java 9 在接口中添加了私有方法新功能。可以使用private修饰符来定义私有方法。我们可以在Java 9的接口中添加私有和私有静态方法
接口中私有方法的规则:
- 私有方法的主体位于接口意味着我们不能像通常在接口中那样声明为普通的抽象方法。如果我们试图声明一个没有主体的私有方法,那么它可能会抛出一个错误,指出“此方法需要主体而不是分号”。
- 我们不能在接口中同时使用私有和抽象修饰符。
- 如果我们想从接口中的静态方法访问私有方法,那么方法可以声明为私有静态方法,因为我们无法对非静态方法进行静态引用。
- A 在非静态上下文中使用的私有静态方法意味着它可以从接口中的默认方法调用。
语法
<strong>interface <interface-name> { private methodName(parameters) { // some statements } }</strong>
示例
interface TestInterface { <strong>default </strong>void methodOne() { System.out.println("This is a Default method One..."); printValues(); // calling a private method } <strong>default </strong>void methodTwo() { System.out.println("This is a Default method Two..."); printValues(); // calling private method... } <strong>private </strong>void <strong>printValues</strong><strong>()</strong> { <strong>// private method in an interface </strong> System.out.println("methodOne() called"); System.out.println("methodTwo() called"); } } public class PrivateMethodInterfaceTest implements TestInterface { public static void main(String[] args) { TestInterface instance = new PrivateMethodInterfaceTest(); instance.methodOne(); instance.methodTwo(); } }
输出
<strong>This is a Default method One... methodOne() called methodTwo() called This is a Default method Two... methodOne() called methodTwo() called</strong>
以上就是在Java 9中,接口中的私有方法有哪些规则?的详细内容,更多请关注其它相关文章!