2013-07-17 4 views
3
abstract class Manager { 

    static void test() { 
     System.out.println(12); 
    } 

    class Manager1 { 
     public static void main(String args[]) { 
      System.out.println(Manager.test()); 
     } 
    } 
} 

Он производит ошибку времени компиляции. Может ли абстрактный класс использовать метод static с типом void?Внутренний класс с основным методом не компилируется

+1

И что такое ошибка? – RiaD

+0

Является ли 'Manager1' расширением' Manager' в этом случае? Вы не должны вставлять 'Manager1' внутри' Manager'. – gwin003

+0

@ gwin003, я так не думаю – RiaD

ответ

12

Нестатические внутренние классы не могут иметь методы static - только классы верхнего уровня и статические классы (согласно JLS §8.1.3).

Кроме того:

System.out.println(Manager.test()); 

Manager.test() недействительна, вы не можете напечатать это.

Смежные вопросы