 Tutoriales
Introducción a Java
Paquetes
Como ya hemos visto, el elemento fundamental de este lenguaje son
las clases. Existe, sin embargo, un elemento de mayor rango llamado paquete, que
no es más que un contenedor de clases. Actúan a modo de librerías y existen
más que nada por comodidad. Para agrupar varios ficheros fuente de Java en un
sólo paquete incluiremos una línea al comienzo de los mismos:
package net.programacion.ejemplos;
Y el código resultante (los ficheros con extensión class) se situaría
en el directorio net/programacion/ejemplos.
Pertenecerían al paquete net.programacion.ejemplos.
Para poder utilizarlos desde otro programa deberíamos
utilizar la sentencia import, que también se
coloca al principio del programa (aunque después de
package):
import net.programacion.net.*;
Hay que indicar que import es una palabra clave que indica las clases que
deseamos cargar, no los paquetes. Sin embargo, al admitir el uso del comodín *,
se puede utilizar para cargar paquetes enteros. Por ejemplo, si deseamos
utilizar la clase Date, situada en el paquete java.util, podemos
cargarla de dos maneras:
import java.util.Date;
import java.util.*;
Algunos paquetes de Java
Existen muchos paquetes en la librería estándar de Java, paquetes que,
además, han ido variando según se sucedían las versiones del mismo. Así, pues,
vamos a destacar algunos paquetes presentes en todos los JDK:
- java.lang
- Este paquete incluye las clases imprescindibles para que el lenguaje Java
funcione como tal, es decir, clases como Object, Thread, Exception, System,
Integer, Float, Math, Package, String, etc., que implementan la base del
lenguaje. No es necesario importar nada desde ese paquete porque
se carga por defecto.
- java.util
- Este paquete es el segundo en importancia, ya que incluye muchas clases
útiles como pueda ser Date (fecha) y, sobre todo, diversas clases que
permiten el almacenamiento dinámico de información, como Vector, LinkedList,
HashMap, etc..
- java.applet
- Contiene la archifamosa clase Applet, que nos permite crear applets para
verlos en nuestro navegador.
- java.awt
- Este paquete, cuyo nombre corresponde a las siglas de Abstract Windowing
Toolkit, contiene las clases necesarias para crear interfaces de usuario,
por medio de menús, botones, áreas de texto, cajas de confirmación, etc..
- java.io
- Este paquete contiene las clases necesarias para realizar las operaciones
de entrada/salida, ya sea a pantalla o a ficheros, clases heredadas de
FileInputStream y FileOutputStream.
- java.net
- Paquete que permite la programación de aplicaciones que accedan a bajo
nivel a redes TCP/IP.
Control de acceso
Ha llegado el momento de especificar lo que en el primer ejemplo llamamos
control de acceso. Cuando se crea una nueva clase en Java, se puede especificar
el nivel de acceso que se quiere para las variables de instancia y los métodos
definidos en la clase por medio de los siguientes modificadores de acceso:
- public
- Cualquier clase puede acceder a las propiedades y métodos públicos.
- protected
- Sólo las clases heredades y aquellas situadas en el mismo paquete pueden
acceder a las propiedades y métodos protegidos.
- private
- Las variables y métodos privados sólo pueden ser accedidos desde dentro de
la clase.
- "friendly" (valor por defecto)
- Si no se especifica ningún modificador de acceso, las variables y métodos se
declaran "friendly" (amigas), lo que en la práctica significa lo mismo que
protected.
- private protected
- Sólo las clases heredades pueden acceder a las propiedades y métodos
protegidos.
|
|
|