У меня есть одно сомнение. Когда мы используем ArrayList
или HashMap
в Java, нам нужно импортировать java.util.ArrayList
или java.util.HashMap
. Но когда мы используем String
, для него не требуется инструкция import
. Может ли кто-нибудь уточнить, почему?
Импорт строки Java
Ответ 1
String
присутствует в пакете java.lang
, который по умолчанию импортируется во все java-программы.
Ответ 2
Все в пакете java.lang
неявно импортируется (включая String), и вам не нужно делать это самостоятельно. Это просто особенность языка Java. Однако ArrayList и HashMap находятся в пакете java.util
, который неявно импортируется.
Пакет java.lang в основном включает в себя основные функции, такие как класс примитивов, основные исключения и класс Object. Это является неотъемлемой частью большинства программ, заставляя людей импортировать их избыточно, и поэтому содержимое этого пакета неявно импортируется.
Ответ 3
Компилятор Java импортирует по 3 пакета по умолчанию.
1. The package without name
2. The java.lang package(That why you can declare String, Integer, System classes without import)
3. The current package (current file package)
Вот почему вам не нужно объявлять инструкцию import для пакета java.lang
.