Avatar ·

Объясните код if __name__ == "__main__" в терминах языка Java

📁 python, вопрос, новичок

"

Я новичок в Python и стараюсь понять все через язык, который знаю, - через Java. Наткнувшись на if __name__ == ""__main__"", впал в ступор. Читаю ответы по данной теме, но все равно инфа сложно ""ложится"". Есть ли аналог этих __name__ да ""__main__"" на языке Java? Заранее спасибо.

P.S. Не нужно писать про дубликат. В вопросах нет аналогов с Java. Не стоит рубить с плеча. Прочтите мой вопрос внимательно, пожалуйста.

"

Avatar ·

"

По отдельности эти конструкции на Java не перевести, но вместе - вполне возможно если понимать что они делают.

Дело в том, что в Питоне любой модуль является исполнимым - и если его запустить, он всегда получает имя __main__. Ну а __name__ - это имя текущего модуля. Таким образом, проверка if __name__ == ""__main__"" проверяет что модуль был запущен из командной строки, а не был импортирован из другого модуля.

Иными словами, проверка if __name__ == ""__main__"" - это дополнительная точка входа в программу.

В языке Java точками входа в программу являются методы main:

public static void main(String[] args)

"

Войдите чтобы оставить ответ

Блоги