2014-09-22 33 views
-2

如何访问私有静态内部类的公共函数在其他一些类假设有一类结构如下图所示: -如何从另一个类访问私有静态内部类中的公共方法?

public class Outer{ 

    private static Inner { 
    public void func() {  
    } 
    } 
} 

而且,还有另一个类: -

class UseFunc {  
    // I have to use the func() here  
} 

如果我这样使用它会给错误: - 创建内蒙古的物体,像Outer.Inner oi = new Outer.Inner(); access oi.func() //因为内部是私有类

+1

你测试上面的代码输出什么它给用户#1可以回答一个问题,当你尝试的东西,你得到了一些问题 – JavaBeigner 2014-09-22 10:05:29

+1

什么是制造类私人和方法,公开的意义呢? – 2014-09-22 10:06:01

+0

是的,我测试了这个,它给编译时间错误,因为内部是私人不能访问。 – pooja 2014-09-22 10:06:43

回答

0

好吧,这是一个非常糟糕的(我意思是,真的很可怕)的实施,但它的工作原理:

public class Outer 
{ 

    private static class Inner 
    { 
     public void func() 
     { 
     } 
    } 

    public void encapsulatedFunc() 
    { 
     new Inner().func(); 

    } 

} 


class UseFunc 
{  
    public static void main(String[] args) 
    { 
     new Outer().encapsulatedFunc(); 
    } 
} 

我只能想象代码被用于教育目的作为“什么不该做”的例子。

相关问题