2014-09-22 34 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(); 
    } 
} 

我只能想象代碼被用於教育目的作爲「什麼不該做」的例子。

相關問題