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

Код как опубликованный несет только поверхностное сходство с Java. Существует возможность использования исполняемого кода для инициализации статического поля:

private static int[] a = new int[5]; 
    static { 
    for(int i=0;i<5;i++) { 
     a[i] = i; 
    } 
    } 
Смежные вопросы