Вы не очень ясно дали понять, но я предполагаю, что ваш вопрос заключается в том, почему этот основной метод можно запустить при вводе java HelloWorld
в командной строке.
Ответ таков: Спецификация языка Java просто не требует, чтобы класс, содержащий основной метод, был общедоступным.Модификаторы доступа - это языковой механизм, предназначенный главным образом для обеспечения возможности сопровождения посредством инкапсуляцииОни на самом деле не особенность безопасности и, конечно, не непоколебимые законы физики.Механизм запуска JVM просто игнорирует их.
На самом деле, вы даже можете использовать закрытый внутренний класс, и он все равно будет работать.