2013-06-04 43 views
-1

我是新手編程,並在Java中遇到了一些問題。我學到了靜態變量,並試圖實現,而且工作得很好,但如果我在嵌套的方式實現靜態變量,該變量不會得到更新Java:嵌套方法不能編譯

public class MyClass { 
    private static int[] a = new int[5]; 

    public void firstMethod() { 
     public void secondMethod() { 
      for(int i=0;i<5:i++) { 
       public void thirdMethod() { 
        a[i] = i; 
       } 
      } 
      System.out.println(a[0]); // Doesn't show 0 
     } 
    } 
} 

有沒有在上面的代碼中的任何錯誤?如果這是不可能的,那麼其他解決方案?請幫助

在此先感謝

+5

此代碼不能編譯。 –

+3

Java不支持「嵌套方法」。你究竟想要做什麼? –

+0

任何其他解決方案是什麼?爲什麼你認爲你需要三個嵌套的方法來初始化一個數組? – EJP

回答

3

方法不能嵌套在Java中。那是你的問題。

1

所發佈的代碼僅與Java表面上相似。有一個使用可執行代碼初始化靜態字段的工具:

private static int[] a = new int[5]; 
    static { 
    for(int i=0;i<5;i++) { 
     a[i] = i; 
    } 
    }