2013-06-04 2 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

게시 된 코드는 자바와 피상적으로 닮았습니다. 실행 코드를 사용하여 정적 필드를 초기화하는 기능이 있습니다.

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