接口的私有方法定义、使用

抽取一个共有方法,用来解决两个默认方法之间重复代码的问题,这个共有方法不应该让实现类使用,应该是私有化的。

解决方案:
从Java 9开始,接口当中允许定义私有方法。
1. 普通私有方法,解决多个默认方法之间重复代码问题
定义格式
private 返回值类型 方法名称(参数列表) {
方法体
}
例:
 1 public default void methodDefault1() {
 2         System.out.println("默认方法1");
 3 //        methodCommon();
 4     }
 5 
 6     public default void methodDefault2() {
 7         System.out.println("默认方法2");
 8 //        methodCommon();
 9     }
10 
11     private void methodCommon(){
12         System.out.println("AAA");
13         System.out.println("BBB");
14         System.out.println("CCC");
15     }


2. 静态私有方法,解决多个静态方法之间重复代码问题
格式:
private static 返回值类型 方法名称(参数列表) {
方法体
}
例:
 1 public static void methodStatic1() {
 2         System.out.println("静态方法1");
 3         methodStaticCommon();
 4     }
 5 
 6     public static void methodStatic2() {
 7         System.out.println("静态方法2");
 8         methodStaticCommon();
 9     }
10 
11     private static void methodStaticCommon() {
12         System.out.println("AAA");
13         System.out.println("BBB");
14         System.out.println("CCC");
15     }

 

posted @ 2020-11-10 17:08  Oooooooa  阅读(356)  评论(0)    收藏  举报