Иллюстрированный самоучитель по Java
Импорт
классов и пакетов
Внимательный читатель заметил во
второй строке листинга 3.2 новый оператор
import
. Для
чего он нужен?
Дело в том, что компилятор будет
искать классы только в -одном пакете, именно, в том, что указан в первой строке
файла. Для классов из другого пакета надо указывать полные имена. В нашем примере
они короткие, и мы могли бы писать в листинге 3.2 вместо
Base
полное имя
p1.Base.
Но если полные имена длинные, а
используются классы часто, то стучать по клавишам, набирая полные имена, становится
утомительно. Вот тут-то мы и пишем операторы
import
, указывая
компилятору полные имена классов.
Правила использования оператора
import
очень просты: пишется слово
import
и, через пробел, полное имя класса, завершенное точкой с запятой. Сколько классов
надо указать, столько операторов
import
и пишется.
Это тоже может стать утомительным
и тогда используется вторая форма оператора
import
—
указывается имя пакета или подпакета, а вместо короткого имени класса ставится
звездочка *. Этой записью компилятору предписывается просмотреть весь пакет.
В нашем примере можно было написать
import
p1.*;
Напомним, что импортировать можно
только открытые классы, помеченные модификатором
public
.
Внимательный читатель и тут настороже.
Мы ведь пользовались методами классов стандартной библиотеки, не указывая ее
пакетов? Да, правильно.
Пакет
java.iang
просматривается всегда, его необязательно импортировать. Остальные пакеты стандартной
библиотеки надо указывать в операторах
import
, либо записывать
полные имена классов.
Подчеркнем, что оператор
import
вводится только для удобства программистов и слово "импортировать"
не означает никаких перемещений классов.
Знатокам C/C++
Оператор
import
не эквивалентен директиве препроцессора
include
— он
не подключает никакие файлы.