Hola Te saludo nuevamente Ubaldo Costa espero que estén listos para comenzar con esta elección.
Vamos a revisar a continuación el tema de paquetes en ya están listos vamos paquetes en Java los paquetes
en Java permiten organizar nuestras clases.
Podemos pensar en los paquetes como cualquier carpeta o folder que creamos para organizar documentos
archivos fotos o cualquier tipo de información en Java lo que organizamos son clases y básicamente nos
permite agrupar clases ya sea por su función por herencia o por cualquier característica que deseemos.
Lo importante es que tengamos una organización de nuestras clases ya que solo en la versión estándar
de Java encontramos más de 4000 clases y por lo tanto es importante definir la forma en que organizaremos
nuestras clases
así que los paquetes en Java nos permiten organizar clases nos permiten evitar conflictos entre nombres
de clases.
Limitamos también el acceso a clases respectivas dentro de ciertos paquetes y también existe una biblioteca
de paquetes ya existentes de igual manera.
Un proyecto en Java suele tener cientos o miles de clases por lo tanto debemos organizar nuestras clases
de la mejor forma.
Normalmente por la función que estas clases desempeñan en nuestro programa a tener tantas clases es
normal que existan clases con el mismo nombre.
Sin embargo como cada clase pertenece a un paquete distinto los paquetes también nos servirán para evitar
problemas en nombres entre clases.
Es decir que nos van a evitar conflictos entre nombres de clases.
Por ejemplo existen muchas clases llamadas Droit o fecha esto solamente en la versión estándar de Java
y para poder distinguir qué clase queremos utilizar debemos especificar el paquete Java donde se encuentra
dicha clase.
Más adelante veremos un ejemplo de cómo hacer uso de paquetes y cómo aullaban nos permite utilizar las
clases que pertenecen a dichos paquetes.
Otro de los usos de los paquetes es que limitan el acceso a los métodos o atributos de nuestras clases
ya que limita según los modificadores de acceso que se utilicen.
Este concepto lo veremos a detalle en el siguiente curso en la versión estándar de Java.
Existen más de 4000 clases por lo que ya existe un gran número de paquetes definidos.
Además de los que nosotros definamos todas estas clases están disponibles para ser utilizadas en nuestros
programas Java y más adelante veremos cómo podemos acceder a estas clases
convención en nombre de paquetes en Java el nombre de los paquetes Java sigue un estándar todo el nombre
debe de estar en minúsculas posteriormente se acostumbra escribir el nombre del dominio web de manera
invertida si es que lo vamos a utilizar para crear un proyecto de nuestra empresa.
Por ejemplo en este caso tenemos el dominio global mentoring punto com punto Mx entonces el nombre del
paquete de Java será MX puntocom Punto G Eme o globalmente.
Y si tenemos un proyecto ya que una empresa puede tener bastantes proyectos podemos simplemente clasificarlo
como sigue MX punto com punto global mentoring punto mi proyecto y así cada uno de los proyectos que
tengamos van a estar englobados dentro del paquete más general MX com global mentoring ejemplo de sus
paquetes podemos tener el paquete DMX punto com punto global mentoring punto contabilidad junto a mi
proyecto y podemos tener más paquetes por ejemplo MX punto com punto global mentoring punto administración
punto mi proyecto así de esta manera.
Si hubiera algún conflicto de nombres con otro proyecto basta con modificar el nombre de proyecto alguno
que no tenga conflicto.
La idea es que sigamos este estándar aunque no tengamos un dominio en Internet ya que este dominio web
no es necesario que exista en internet es sólo para evitar conflictos de nombres lo más posible.
Sin embargo podemos observar en los ejemplos mostrados el nombre del dominio globalmente en un punto
com punto MX el cual si queremos utilizarlo en nuestros proyectos podríamos usarlo en primer lugar invirtiendo
el orden del nombre del dominio y posteriormente agregando el nombre de nuestro proyecto con el objetivo
de tener un nombre de paquete único.
También vemos algunos ejemplos si tuviéramos un proyecto y si ese proyecto tuviese sus paquetes para
distintas partes del proyecto
ejemplo de clases dentro de un paquete
vamos a ver a continuación algunos ejemplos de paquetes en Java por ejemplo el paquete com punto G M.
Posteriormente se define el nombre de la clase y estamos agregando un método para imprimir y es un método
estático.
Por ello esta clase va a ser llamada utilería ya que estos métodos que vamos a agregar son estáticos
y los vamos a utilizar directamente con el nombre de la clase
posteriormente para utilizar esta clase de utilería lo que vamos a hacer es primeramente importar el
paquete utilizando la palabra reservada import e indicamos que queremos importar el paquete com punto
G.M. punto asterisco y el asterisco significa que podemos importar las clases que vamos a utilizar en
este caso la clase de utilería.
Sin embargo esto no quiere decir que se crea una instancia de la clase simplemente es que podemos utilizar
el nombre de la clase del paquete respectivo ya que en este caso el nombre completamente calificado
de la clase utilería sería como sigue.
Cuando la quisiéramos utilizar sería puntocom G.M. punto utilería pero para no estar utilizando el nombre
completo cada vez que utilicemos esta clase lo que vamos a hacer es importar la clase pero lo que vamos
a hacer es indicar cuál es el paquete que queremos importar podemos especificar que únicamente importe
una clase indicando el nombre de utilería en lugar de asterisco pero básicamente el asterisco lo que
significa es que va a importar todos los nombres de clases que se encuentren dentro del paquete com
punto G M así que de esta manera una vez haciendo el importe del paquete con punto GM la clase de utilería
al agregarla a través del asterisco todas las clases contenidas dentro de este paquete entonces dentro
de nuestro código vamos a poder utilizar simplemente el nombre de la clase ya que ya hicimos el impor
respectivo en la primera línea de código de esta clase así que primero importamos el paquete y posteriormente
por ejemplo dentro de un método podemos utilizar directamente ya el nombre de la clase así que sin importar
que esta clase esté ubicada en otra carpeta en otro paquete simplemente haciendo un import del paquete
que queremos utilizar.
Vamos a poder utilizar finalmente la clase únicamente con el nombre de la misma y así mandar a llamar.
El método estático correspondiente a esta clase así que en este ejemplo primeramente creamos una clase
llamada utilería.
Esta clase la estamos agregando a un paquete llamado conjunto G.M pero puede ser cualquier nombre que
deseemos.
Una vez que hemos agregado una o más clases a este paquete entonces creamos una clase en un paquete
distinto.
En este caso creamos la clase ejemplo paquetes en el paquete por default de IAVA es decir en ningún
paquete en particular.
Cabe señalar que esta práctica no se recomienda sólo es para realizar el ejercicio y recomienda que
todas las clases que creemos deben de estar dentro de un paquete.
Así que a partir de ahora todas las clases que creemos se van a encontrar dentro de un paquete.
Ahora para poder utilizar la clase utilería definida en el paquete con Punto G M según hemos comentado
lo que debemos hacer es utilizar la palabra import la cual podemos utilizar de dos maneras una es importando
todas las clases usando el asterisco o la otra es especificando directamente el nombre de la clase es
decir import con Punto G M.N utilería.
Sin embargo esta última opción nos obliga a hacer un import por cada clase que deseemos utilizar del
paquete con Punto G M y si fueran muchas clases serían muchas líneas de código de cada uno de los importe
de cada clase.
Por lo que en muchas ocasiones la notación import con Punto G M punto asterisco será la más utilizada.
Cabe mencionar que el import no afecta a la memoria ya que no es que se carguen todas las clases de
un paquete en memoria.
Una clase se carga en memoria hasta que se usa el nombre de la clase dentro del código respectivo es
decir en alguna función y no antes.
Finalmente podemos ver cómo estamos utilizando el método estático llamado imprimir el cual pertenece
a la clase utilería.
Observamos que ya no estamos indicando a qué paquete corresponde dicha clase ya que hemos hecho el impor
respectivo al inicio de la clase.
Sin embargo si hubiera más de una clase llamada utilería podríamos eliminar el import e indicar en la
línea de código dónde vamos a utilizar la clase directamente el paquete al cual corresponde la clase
quedando con puntos G M.N utilería punto.
Imprimir con esto sabríamos exactamente a qué paquete corresponde la clase que estamos utilizando
import estatico
en Java.
Es posible importar los métodos estáticos a utilizar y de esta manera simplificar la sintaxis en los
métodos estáticos de nuestro código así que podemos observar a continuación un ejemplo de este tipo
de import estatico similar al ejemplo anterior que hemos comentado estamos definiendo un paquete con
Punto G M y posteriormente en este paquete estamos agregando la clase utilería y dentro de esta clase
estamos definiendo un método imprimir de tipo estático.
Esto es lo mismo que creamos y comentamos en el ejemplo anterior posteriormente.
Ahora lo que hacemos es utilizar un import estático para poder mandar a llamar directamente el nombre
del método sin utilizar el nombre de la clase para ello lo que vamos a hacer es indicar Import y posteriormente
indicamos que queremos importar un método estático y posteriormente indicamos a qué clase corresponde
este método estático.
De esta manera indicamos que el método estático a imprimir pertenece al paquete com punto G M de la
clase utilería e indicamos el método que vamos a utilizar directamente así que este va a ser el método
estático que vamos a utilizar y por ello es que este import a diferencia del ejemplo anterior debemos
especificar que va a ser estático ya que el método que vamos a utilizar es estático y esto tiene el
beneficio de que cuando ya estamos dentro de la clase ejemplo de paquetes y dentro de El método main
podemos mandar a llamar directamente este método imprimir Hola.
Si observamos directamente pareciera que este método debe estar definido dentro de esta clase.
Sin embargo este método está definido en la clase utilería y por medio del import Static estamos simplificando
el acceso a esta clase así que en el ejemplo mostrado podemos observar que la clase utilería y el paquete
al que pertenecen son los mismos que en el ejemplo anterior pero debido a que el método a imprimir es
un método estático podemos aprovechar la sintaxis de import Static que nos brinda IAVA para importar
el método estático a utilizar y de esta manera se simplifica la sintaxis del uso del método.
Imprimir ya que como podemos observar el método imprimir ya no debe indicar a qué clase pertenece sino
que es suficiente con indicar el nombre del método ya que en el import Static ya se ha indicado que
pertenece a la clase de utilería
paquetes más importantes de Java estándar Edition.
En la tabla mostrada podemos observar algunos de los paquetes Java más comunes en la versión estándar.
El más importante es el paquete Java punto Langue el cual contiene las clases Kort del lenguaje Java
tales como la clase Object que es la clase de la cual descienden todas las clases en Java entre varias
clases más.
Cabe señalar que no es necesario hacer import de ninguna de las clases de este paquete Java punto Langa
ya que es el único que se importa de manera automática por la importancia que tienen estas clases en
la compilación y ejecución de nuestras clases Java.
Existen otros paquetes los cuales también son muy importantes tales como los paquetes Java punto y útil
ya va punto net Java punto a doble UTEM ya va punto uy ya va punto applet etc..
Entre muchos paquetes más conforme vayamos avanzando a lo largo del curso y cursos posteriores estaremos
estudiando varias de las clases de estos paquetes.