Uso de librerías en Java. Importar librerías estándar de Java y librerías propias. Importar paquetes
En Java y en varios lenguajes de programación más, existe el concepto de librerías. Una librería en Java se puede entender como un conjunto de clases, que poseen una serie de métodos y atributos. Lo realmente interesante de estas librerías para Java es que facilitan muchas operaciones. De una forma más completa, las librerías en Java nos permiten reutilizar código, es decir que podemos hacer uso de los métodos, clases y atributos que componen la librería evitando así tener que implementar nosotros mismos esas funcionalidades.
Imaginemos cómo hacer un código para conseguir que nuestra aplicación imprima algo por pantalla o conseguir que nuestra aplicación pueda hacer uso de arreglos dinámicos con cualquier tipo de dato. Por medio de librerías, para imprimir texto en pantalla en Java basta con usar System.out.print() y se puede hacer uso de ArrayList, para tener arreglos dinámicos y demás, en Java, esto es así de fácil y todo es gracias a las librerías, la clase System que pertenece a la librería java.lang (ésta es la librería estándar de Java y no es necesario importarla). Ocurre de la misma forma con el ArralyList, no podríamos hacer uso de éste si no existiera la librería java.util. Cabe mencionar que estas librerías no solo poseen estas clases sino que poseen una gran cantidad de clases Java adicionales que nos permiten llevar a cabo operaciones muy complejas con gran facilidad.
Lo más interesante de las librerías en Java, es que nosotros también podemos crearlas y hacer uso de ellas al interior de nuestros proyectos. Básicamente un paquete en Java puede ser una librería, sin embargo una librería Java completa puede estar conformada por muchos paquetes más. Al importar un paquete podemos hacer uso de las clases, métodos y atributos que lo conforman, así que eso de las librerías no es solo trabajo de otros sino que podemos crear nuestras propias librerías y usarlas, incluso podemos hacer uso de un proyecto completo nuestro al interior de otro (así de genial es esto).
Pues bien, hasta ahora todo suena muy impresionante y se entiende que es bastante útil y que nos facilita enormemente la vida, pero ¿cómo importar una librería en Java? ¿cómo se usa una librería de Java? ¿qué es importar una librería? o mejor aún ¿qué es import en Java? pues bien, vamos a resolver todas estas dudas a continuación.
Import en Java (importar librerías en Java)
Hacer uso de librerías tanto propias como externas, o librerías propias de Java, es bastante fácil. Básicamente lo único que debemos saber es que para importar librerías en Java se usa la palabra clave import seguido de la "ruta" del paquete o clase que deseamos agregar al proyecto. Cabe resaltar que el import permite agregar a nuestro proyecto una o varias clases (paquete) según lo necesitemos. Para comprender y usar correctamente el import de Java, retomaremos los ejemplos dados en la sección de paquetes.
Ejemplo de import en Java
Vamos a suponer que al interior de nuestro proyecto hemos creado cuatro clases diferentes en paquetes diferentes, cada clase se llamará "Clase_1", "Clase_2", "Clase_3" y "Clase_4" respectivamente.
En la imagen de abajo se puede apreciar la estructura de los paquetes de cada una de las cuatro clases de Java. Veamos con detalle esto para quedar claros.
La clase número uno fue declarada en un el paquete "mis_clases.clases_publicas.clase_1" por lo tanto quedará al interior de una carpeta llamada "clase_1" la cual estará al interior de otra carpeta llamada "clases_publicas" y esta a su vez estará dentro de la carpeta llamada "mis_clases". La clase número dos se le declaró el paquete "mis_clases.clase_2" por lo tanto ha quedado al interior de una carpeta llamada "clase_2" la cual a su vez está al interior de la carpeta "mis_clases". A la clase número tres se le impuso el paquete "mis_clases", esto indica que esta estará al interior de la carpeta "mis_clases". Por último, la clase número cuatro no tiene declarado ningún paquete por lo tanto el paquete asignado será el paquete por defecto, en otras palabras, esta clase se mantendrá siempre en la carpeta raíz del proyecto (en netbeans y eclipse la carpeta raíz se llama src).
Muy bien, ya sabemos la estructura de nuestros paquetes y necesitamos importarlos al interior de alguna otra clase para hacer uso de ellas, para esto, Java nos proporciona el comando import (tal como mencioné anteriormente). Antes de comenzar a mostrar como importar las clases de estos paquetes, voy a dar algunas normas y definiciones útiles al momento de importar librerías, clases o paquetes en Java.
Antes de importar en Java...
Al igual que sucede con la declaración de los paquetes, realizar el import en Java también tiene una localización especifica al interior del archivo java. La importación de librerías y demás siempre debe ir después de la declaración del paquete, si la clase no posee alguna declaración de paquete (pertenece al paquete por defecto), entonces los import deberán estar en las primeras líneas del archivo.
Ejemplo 1: Sintaxis para import en Java
package paquete.mipaquete;
import paquete2.otropaquete.*;
class Ejemplo1{}
En el código anterior básicamente estamos diciendo que la clase contenida en el archivo Java, estará en el paquete "paquete/mipaquete", es decir, esa será la ruta de acceso a esa clase en el proyecto. En la siguiente línea hemos realizado el import de un paquete. Por medio del "*" hemos indicado a Java que queremos importar todas las clases pertenecientes a dicho paquete, puede ser una o más.
Ejemplo 2: Sintaxis para import en Java
package paquete.mipaquete;
import paquete3.otropaquete2.MiClase;
class Ejemplo2{}
En el código anterior hemos usado el mismo paquete para la clase pero hay una pequeña diferencia al momento del import, en esta ocasión hemos importado una clase directamente (MiClase), es decir, como no usamos el "*" no hemos importado todas las clases pertenecientes al paquete "paquete3.otropaquete2" sino que solo hemos importado a "MiClase"
Ejemplo 3: Sintaxis para import en Java
import paquete.mipaquete.*;
class Ejemplo3{}
En esta ocasión se puede apreciar que no hemos declarado paquete alguno para nuestra clase y que únicamente hemos realizado el import, sin embargo este import como tal es algo particular para nosotros, pues hemos importado TODAS las clases pertenecientes al paquete "paquete.mipaquete" que es el paquete al cual pertenecen las clases del ejemplo 1 y 2, esto quiere decir que al interior de la clase Ejemplo3, podemos usar las clases Ejemplo1 y Ejemplo2.
Muy bien!! Hasta el momento ya sabemos muchas cosas acerca del import en Java, sabemos cómo importar todas las clases pertenecientes a un paquete, también como importar una única clase de un paquete cualquiera y vimos también que los paquetes que nosotros mismos creamos al interior del proyecto, pueden ser usados en otras clases de manera instantánea. Pero aún hay algo que no hemos visto y lo cual es de gran importancia, ¿cómo importar las clases y librerías propias de Java?, pues bien vamos a verlo.
Importando clases de Java
Importar clases propias de Java es prácticamente igual que importar clases de nuestros propios paquetes, sin embargo, ¿cuáles son esas clases?, ¿cómo conocerlas?, ¿cuál es el paquete al que pertenecen?, pues bien, de una vez te comento que Java está conformado por una enorme cantidad de clases y paquetes y desde mi punto de vista creo que es bastante complejo conocerlas todas, aunque si es importante conocer las más comunes y útiles, básicamente lo que debes hacer es ingresar a la API de Java y allí encontrarás todas las clases que componen el lenguaje, el paquete al que pertenecen, los métodos que poseen, los atributos y una breve explicación de cada uno de estos. Si ingresas a la documentación de Java verás que por ejemplo existe una clase llamada ArrayList, ésta pertenece al paquete java.util, esto quiere decir que para importarla debemos usar esa dirección, veamos:
Ejemplo 4: Importando clases de Java
import java.util.ArrayList;
class Ejemplo4{}
Aquí hemos importado la clase ArrayList y podremos hacer uso de sus componentes, siempre y cuando sean públicos (más adelante hablaremos de esto). Hay otra forma de hacerlo, pero posee ciertos inconvenientes:
Ejemplo 5: Importando clases de Java
import java.util.*;
class Ejemplo5{}
Aqui hemos importado TODAS las clases pertenecientes al paquete "java.util" lo cual incluye la clase ArrayList y por lo tanto es funcional y válido, sin embargo esto es bastante ineficiente, pues estamos importando todas las clases que son aproximadamente 50 y que seguramente no usaremos. Veamos entonces cómo importar algunas clases propias de Java.
Ejemplo 6: Importando clases de Java
import java.util.ArrayList;
import java.io.* //importando clases para entrada y salida (IN OUT)
import java.math.* //clases utiles para operaciones y valores matematicos
class Ejemplo6{}
Como podrás ver, existen muchas librerías muy útiles y es bastante sencillo hacer uso de ellas cuando sea necesario y así ahorrarnos mucho tiempo, trabajo y esfuerzo.
Muy bien, hasta ahora hemos aprendido todo lo necesario acerca del import en Java, sabemos cómo importar nuestra propias clases, importar todas las clases de un paquete, también vimos que Java posee una API y que está conformada por una enorme cantidad de Clases, interfaces, excepciones, etc. y que en cualquier momento podemos hacer uso de cualquiera de estas.
Hemos llegado al final de este contenido, espero que hayas comprendido a la perfección cada uno de los detalles aquí explicados y que ahora domines correctamente el concepto de librerías en Java y del import en Java. Recuerda que si tienes algún problema, duda o comentario, puedes dejarlo sin ningún temor en la sección de comentarios.Puedes continuar con la sección de sistema de tipos en Java.
La última actualización de este artículo fue hace 3 años