其他类通过接口访问内部类成员(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()返回一个接口,内部类覆盖了接口的方法,这外部类可以通过接口访问内部类函数
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()返回一个接口,内部类覆盖了接口的方法,这外部类可以通过接口访问内部类函数
相关文章推荐
- java语言基础(48)——局部内部类访问外部成员和局部成员
- Java-内部类(三)成员内部类就应该访问外部类的成员!!
- 深入理解Java中为什么内部类可以访问外部类的成员
- 深入理解Java中为什么内部类可以访问外部类的成员
- 深入理解Java中为什么内部类可以访问外部类的成员
- 深入理解Java中为什么内部类可以访问外部类的成员
- java通过DOM接口访问XML文档
- http接口加密《一》:移动应用中,通过在客户端对访问的url进行加密处理来保护服务器上的数据
- 深入理解Java中为什么内部类可以访问外部类的成员
- 接口加密《一》:移动应用中,通过在客户端对访问的url进行加密处理来保护服务器上的数据
- 深入理解Java中为什么内部类可以访问外部类的成员
- Java匿名内部类可以访问外部类的成员;若访问所在方法的成员,那个成员必须具有final属性
- 【经验随笔】Java通过代理访问互联网平台提供的WebService接口的一种方法
- JAVA基础初探(四)JAVA封装、包的概念及使用、访问修饰符、this关键字、内部类(成员,静态,方法,匿名)
- 深入理解Java中为什么内部类可以访问外部类的成员
- Java通过redis实现接口ip访问频率限制
- 深入理解Java中为什么内部类可以访问外部类的成员
- Java通过反射访问私有成员变量和私有方法
- java 内部类和外部类互相访问各自的私有成员