"¡Hola, Amigo! Hoy hablaremos de paquetes".

"Los archivos en una computadora se agrupan en carpetas. Las clases en Java (cada clase se almacena en un archivo separado) se agrupan en paquetes, que corresponden a carpetas en el disco duro. Entonces, no hay nada nuevo aquí. Hay dos cosas que Sin embargo, me gustaría señalarlo".

" Primero , el nombre exclusivo completo de una clase consiste en el nombre de su paquete más el nombre de la clase . Estos son algunos ejemplos:"

Nombre único completo Nombre del paquete Nombre de la clase
java.io.FileInputStream java.io FileInputStream
java.lang.String java.idioma Cadena
java.util.ArrayList java.util Lista de arreglo
org.apache.tomcat.Servlet org.apache.tomcat servlet
Gato No especificado Gato

"Un nombre de clase completo siempre es único".

"Sería una molestia si tuviéramos que escribir el nombre largo, es decir, java.util.ArrayList , cada vez. Es por eso que Java le permite importar clases. Puede usar los nombres cortos de otras clases en su código, pero al principio de su clase, debe indicar explícitamente qué clases usará".

"¿Cómo haces eso?"

"Con una línea que se parece a esto: import java.util.ArrayList;"

"Al comienzo de una clase, inmediatamente después de declarar el paquete, puede indicar a qué clase se refiere cuando usa ArrayList en su código".

"¿Por qué complicar demasiado las cosas? ¿Pueden las clases tener nombres idénticos?"

"Sí. Puede haber clases con el mismo nombre en diferentes paquetes. No podemos importar dos clases con nombres idénticos , por lo que tendríamos que llamar a una de ellas por su nombre completo".

"Esta es una analogía para ti. Tienes un colega llamado Jim. No hay problema con eso: todos saben quién es. Pero si hubiera tres Jims en tu oficina, tendrías que llamarlos por sus nombres únicos y completos para evitar confusión."

" En segundo lugar , siempre es mejor colocar las clases en paquetes, no en la carpeta raíz src . Cuando no tiene muchas clases, esto no es un problema, pero cuando hay muchas, es fácil mezclarlas. Cree siempre clases dentro de los paquetes".

En Java, la práctica común es dar a las clases y paquetes nombres significativos. Muchas empresas publican sus bibliotecas (conjuntos de clases) y les asignan el nombre de su empresa o sitio web para evitar confusiones:"

Nombre del paquete Nombre de la empresa/proyecto
org. apache .común
org. apache .tomcat
org. apache .util
apache
com. oráculo .jdbc Oráculo
java .io
java x.servlet
Sol, Java
com. ibm.websphere IBM, WebSphere
com. jboss jboss