Я только что прочитал книгу по Java, и в ней говорилось, что оператор пакета не является обязательным в Java. Поэтому я написал код без оператора пакета в Intellij IDEA, но он не работает, если в коде не указан оператор пакета. Это было просто приветствие, мир.




Оператор пакета является необязательным, да. Однако классы в пакете по умолчанию (куда они идут, если у вас нет оператора пакета) имеют различные ограничения. Вы, вероятно, столкнулись с одним из них.
Как правило, хотя это и необязательно, не пишите код Java без операторов пакета.
Это просто проблема с тем, что IDE настаивает на определении пакета, когда язык не нуждается в этом?
@another-dave IntelliJ не требует, чтобы класс находился в пакете. Тем не менее, в целом очень плохая идея не использовать пакеты.
@another-dave ОП сказал, что это «не работает», и не уточнил, что это значит. Вещи, которые это могут быть, почти бесконечны. Я просто указал на то, что существуют различные ограничения, и, учитывая, что это «не сработало», ОП, вероятно, столкнулся с одним из них. Давайте не будем ничего предполагать о том, что «не работает»: давайте не будем предполагать, например, что интеллект слепо не принимает это.
@rzwitserloot - достаточно честный комментарий. Как программист, я просто профессионально подготовлен к диагностике проблем в условиях неадекватных вспомогательных данных :-)
Вы не написали ограничения проекта без пакета.