2011-10-31 9 views
12

Tengo una duda. Cuando usamos ArrayList o HashMap en Java, tenemos que importar java.util.ArrayList o java.util.HashMap. Pero cuando usamos String, no requiere la declaración import. ¿Alguien puede aclarar, por qué?importación de cadena de Java

+1

tienes razón :) –

+0

Gracias @Nathan Quirynen ... ¿quieres decir que el paquete java.lang está preimportado en el programa y no necesito importarlo explícitamente ????? –

+0

Quise decir que no necesitabas dudar; Lo sé, no es la respuesta más útil:> –

Respuesta

9

Todo en el paquete java.lang se importa implícitamente (incluido String) y no es necesario que lo haga usted mismo. Esto es simplemente una característica del lenguaje Java. Sin embargo, ArrayList y HashMap están en el paquete java.util, que no se importa implícitamente.

El paquete java.lang incluye principalmente características esenciales, como una versión de clase de primitivas, excepciones básicas y la clase Object. Esto es parte integral de la mayoría de los programas, lo que obliga a las personas a importarlos es redundante y, por lo tanto, los contenidos de este paquete se importan implícitamente.

+0

Gracias Kris ... :-) –

15

String está presente en el paquete java.lang que se importa de forma predeterminada en todos los programas de Java.

+0

Gracias Ankur .. :-) –

+0

De nada :) – Ankur

+0

De la documentación: _... importa automáticamente todos los tipos públicos declarados en el paquete predefinido java.lang._ Fuente: https://docs.oracle.com/javase/specs/jls/se7/html/jls-7.html –

1

El compilador de Java importa 3 paquetes por defecto. 1. The package without name 2. The java.lang package(That's why you can declare String, Integer, System classes without import) 3. The current package (current file's package)

Es por eso que no es necesario declarar instrucción de importación para el paquete java.lang.

Cuestiones relacionadas