2017-02-07 2 views
0

Я изучаю Java, и мне говорят, что этот пакет предоставляется по умолчанию для каждого класса, потому что его методы настолько распространены. Я думал, что попытаюсь импортировать его, чтобы посмотреть, что произойдет. Я знаю, что это не практично и, вероятно, дорого, но мне любопытно, почему это не работает с технической точки зрения.Почему этот javas-импорт по умолчанию не работает?

импорт javax.lang. *; // почему это не работает.

+0

«это не работает» - что не работает? что вы ожидали? – alfasin

ответ

0

Вам не нужно импортировать java.lang. *

Существует одно исключение из правила импорта. По умолчанию все классы в пакете java.lang импортируются. Таким образом, вам не нужно импортировать java.lang. *; использовать их без полных имен.

Рассмотрите метод System.out.println(), который мы использовали с первого дня класса.

Система действительно класс java.lang.System. Этот класс вызывает публичное статическое поле, которое является экземпляром класса java.io.PrintStream. Поэтому, когда вы пишете System.out.println(), вы действительно вызываете метод println() поля out класса java.lang.System.

+0

это не 'java.lang', это' javax.lang' – alfasin

+0

Я знаю, что это javax.lang однако, как вы прокомментировали, ассер, вероятно, путал javax с java – eBourgess