您的位置:首页 > 编程语言 > Java开发

其他类通过接口访问内部类成员(JAVA的保护)

2017-09-17 15:57 211 查看
package luo;

interface Out{

 public void f();

}

class Class2

{

   private class innerClass implements Out//非内部类不能声明为private与protected

   {

    innerClass(String s){

     System.out.println(s);

    }

    public void f()

    {

     System.out.println("访问内部类中的f()方法");

    }

   } 

   public Out doit() {

    return new innerClass("访问内部类的构造方法");

   }

}

public class yong{

 public static void main(String []args)

 {

  Class2 outer=new Class2();

  Out inter=outer.doit();//用外部类方法返回内部类向下转型为接口,接口在调用内部类覆盖接口的方法

  inter.f();

 }

}

//从权限来看,仅有外部类能访问内部类中的函数,通过外部类doit()返回一个接口,内部类覆盖了接口的方法,这外部类可以通过接口访问内部类函数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐