Почему компилятор говорит, что «главный класс не может быть найден или загружен», когда main (String [] args) является методом? - PullRequest
0 голосов
/ 04 июня 2018

Возьмем этот код, например

public class Hello
    {
        static void main(String[] args)
        {
            System.out.println("Hello World");
        }
    }

Здесь я не написал public для метода main и скомпилировал класс.Когда я запускаю программу, почему ошибка читается как «Не удалось найти или загрузить основной класс Hello.java».

Мой вопрос: если main (String [] args) является 'метод' тогда зачем говорить 'основной класс' ? Дело не в том, что публика есть или нет.Дело в том, что я изменил модификатор доступа, который сделал main (string [] args) невидимым для JVM.Так почему же JVM говорит основной класс и , а не метод main () ?

PS Если это глупый вопрос, то я действительно сожалею, что спросил его.

Редактировать: - Вот сообщение об ошибке

Error: Could not find or load main class Hello.java

1 Ответ

0 голосов
/ 04 июня 2018

Здесь две проблемы.

  1. main() должны быть объявлены как public static void.
  2. Однако реальная проблема была вашейкомандная строка.Ясно, что это был

    java Hello.java
    

    Это должно было быть

    java Hello
    

    Здесь нет такого класса, как Hello.java.Название класса Hello.

...