Documentos de Académico
Documentos de Profesional
Documentos de Cultura
• Con tan gran cantidad de clases disponibles se requiera una forma de organizarlas en
una aplicación
• Java maneja una manera similar a lo que hacemos nosotros al guardar documentos,
videos, imágenes, canciones etc.
Declaración e importación de paquetes
• Muchas veces suele suceder que tenemos el problema del ejemplo anterior y
pensamos que se debe a un error de sintaxis o del IDE. Puede ser que verifiques varias
veces en donde esta el error y no lo encuentres.
• Es necesario incluir las instrucciones de importación que le dicen al JRE qué paquetes
buscar para las clases, como no le dijiste a Java dónde buscar la clase Panque, no tiene
ni idea de su existencia.
Declaración e importación de paquetes
¿?
Declaración e importación de paquetes
• Los nombres de los paquetes son jerárquicos, esto quiere decir que los paquetes
deben partir de algún nombre inicial. Si el nombre del paquete comienza con java
o javax, significa que el paquete está en el JDK
• Después del nombre del sitio Web, pueden agregarse los paquetes con las clases
que sean necesarios. Por ejemplo, mx.com.develop.alumnos.examen también
está en develop.com.mx
Las reglas son las mismas que para los nombres de variables, que veremos más adelante.
• El asterisco (*) es un carácter comodín que coincide con todas las clases en el
paquete.
• Cada clase en el paquete java.util está disponible para este programa cuando Java lo
compila. No importan paquetes, campos o métodos secundarios; sólo importa las
clases.
• Está bien, solo son clases por ahora, pero hay un tipo especial de importación
llamado "importación estática (static import)" que importa propiedades y métodos
estáticos.
El caracter Comodín (Wildcards)
Nota:
Podrías pensar que incluir tantas clases ralentiza tu programa, pero no lo hace. El
JRE se da cuenta de lo que realmente es necesario. El enfoque que elijas es de
preferencia personal
Importación Redundante
Importación redundante
El paquete java.lang es especial porque se importa de manera automática, no es
necesario hacerlo explícitamente; sin embargo podría importarse sin generar error
alguno. Esto provocaría lo que se conoce como importación redundante. En el siguiente
código, ¿cuántas de las importaciones crees que son redundantes?
import java.lang.System;
import java.lang.*;
import java.util.Random;
import java.util.*;
public class ImportExample {
public static void main(String[] args) {
Random r = new Random();
System.out.println(r.nextInt(10));
}
}
Conflicto de nombres
Importación redundante
Una de las razones para usar paquetes es que los nombres de clase no tienen que ser
únicos en una API Java. Esto significa que a veces querrás importar clases que tienen el
mismo nombre pero que hacen cosas diferentes y se encuentran en diferentes lugares de
la API. Un ejemplo común de esto es la clase Date.
A veces realmente quieres usar la fecha de dos paquetes diferentes. Cuando esto sucede,
puede elegir uno para usar en la importación y usar el nombre de clase completo del otro
(el nombre del paquete, un punto y el nombre de la clase) para especificar que es
especial. Por ejemplo:
• Puedes saber que el código está en el paquete predeterminado, porque no hay ningún
paquete creado.
Cuando ejecuta un programa Java, Java sabe dónde buscar esos nombres de
paquetes. En este caso, ejecutar desde C: \ temp funciona porque tanto los paquetes
como los paquetes están debajo de él.
Creando un nuevo paquete
• Aprenderás Java mucho más fácilmente usando la línea de comandos para compilar
y probar tus ejemplos. Una vez que conozca bien la sintaxis de Java, puede cambiar
a un entorno de desarrollo integrado (IDE) como Neetbeans.