Java 私有接口 【类中嵌套接口】

1.前言

  接口十分常用,能规范实现类的命名 和 实现多个实现类的向上转型成统一类型 ,但是接口的修饰符只能是 public吗?

当然不是,可以是private ,

  难道是像这样?

 

   显然不可以,已经报错了 ,

那么答案是:只能在类中嵌套私有接口

 

 那么接口内部方法可以是私有的吗?

答案是不可以,不论接口是不是私有修饰符,其内部的方法都不允许是私有修饰符,只能是public修饰符

 

 看,报错了。

2.操作

(1)目录结构

 

 (2)内部嵌套私有接口的类

package com.example.javabaisc.mInterface;

/**
 * 类中嵌套接口 ,修饰符可为 private ,
 * private接口只能在当前类中使用,这样可以使此类有更好封装性,可读性和可维护性
 */
public class KK {
    //私有接口
    private interface EE {
        public void a();
        //接口方法默认是public修饰符,可以不写
        void b();

    }

    //内部类实现接口
    static class GG implements EE {

        @Override
        public void a() {
            System.out.println("a");
        }

        @Override
        public void b() {
            System.out.println("b");
        }
    }

    //供外部 调用 接口实现类方法
    public void mdo() {
        EE e = new GG();
        e.a();
        e.b();
    }


}
View Code

(3)测试类

package com.example.javabaisc.mInterface;

import org.junit.jupiter.api.Test;

public class INTTEst {

    @Test
    public void t(){
        KK k  = new KK();
        k.mdo();
    }

}
View Code

3.测试

控制打印

 

posted @ 2020-06-21 16:49  岑惜  阅读(465)  评论(0编辑  收藏  举报