martes, 20 de marzo de 2007

Pasquetes

Se puede decirr de los paquetes:

El paquete (package)

·Los paquetes son una forma de organizar grupos de clases. Un paquete contiene un conjunto de clases relacionadas bien por finalidad, por ámbito o por herencia.
· Los paquetes resuelven el problema del conflicto entre los nombres de las clases. Al crecer el número de clases crece la probabilidad de designar con el mismo nombre a dos clases diferentes.
·Las clases tienen ciertos privilegios de acceso a los miembros dato y a las funciones miembro de otras clases dentro de un mismo paquete.
En el Entorno Integrado de Desarrollo (IDE) JBuilder de Borland, un proyecto nuevo se crea en un subdirectorio que tiene el nombre del proyecto. A continuación, se crea la aplicación, un archivo .java que contiene el código de una clase cuyo nombre es el mismo que el del archivo. Se pueden agregar nuevas clases al proyecto, todas ellas contenidas en archivos .java situadas en el mismo subdirectorio. La primera sentencia que encontramos en el código fuente de las distintas clases que forman el proyecto es package o del nombre del paquete.

//archivo MiApp.java

package nombrePaquete;
public class MiApp{
//miembros dato
//funciones miembro
}
//archivo MiClase.java

package nombrePaquete;
public class MiClase{
//miembros dato
//funciones miembro
}

La palabra reservada import

Para importar clases de un paquete se usa el comando import. Se puede importar una clase individual

import java.awt.Font;

o bien, se puede importar las clases declaradas públicas de un paquete completo, utilizando un arterisco (*)
para reemplazar los nombres de clase individuales.
import java.awt.*;
Para crear un objeto fuente de la clase Font podemos seguir dos alternativas
import java.awt.Font;
Font fuente=new Font("Monospaced", Font.BOLD, 36);
O bien, sin poner la sentencia import
java.awt.Font fuente=new java.awt.Font("Monospaced", Font.BOLD, 36);
Normalmente, usaremos la primera alternativa, ya que es la más económica en código, si tenemos que crear varias fuentes de texto.
Se pueden combinar ambas formas, por ejemplo, en la definición de la clase BarTexto
import java.awt.*;
public class BarTexto extends Panel implements java.io.Serializable{
//...
}
Panel es una clase que está en el paquete java.awt, y Serializable es un interface que está en el paquete java.io

Paquetes estándar
java.applet
Contiene las clases necesarias para crear applets que se ejecutan en la ventana del navegador
java.awt
Contiene clases para crear una aplicación GUI independiente de la plataforma
java.io
Entrada/Salida. Clases que definen distintos flujos de datos
java.lang
Contiene clases esenciales, se importa impícitamente sin necesidad de una sentencia import.
java.net
Se usa en combinación con las clases del paquete java.io para leer y escribir datos en la red.
java.util
Contiene otras clases útiles que ayudan al programador

Utilidad de los paquetes


La primera y más evidente ventaja del uso de paquetes es que las clases quedan ordenadas y no hay colisión de nombres. Si dos programadores llaman igual a sus clases y luego hay que juntar el código de ambos, basta explicitar a qué paquete nos referimos en cada caso.
En las prácticas del laboratorio usamos los paquetes para discernir una práctica de otra:
package lprg.p1; // para la primera práctica, por ejemplo
Ámbitos de visibilidad
Los paquetes también establecen un perímetro de visibilidad para las clases y los miembros (variables y métodos) de las clases cuando no se dice explícitamente si son públic (para cualquiera, en este o en otro paquete) o private (exclusivamente para esta clase).
Así, la clase C, la variable v y el método m de la siguiente clase
package lprg.p1;

class C {
String v= "...";

void m (...) { ... }
}
serán accesibles para todas las clases del paquete lprg.p1; pero inaccesibles por clases de otros paquetes.
El resultado es una forma muy cómoda de restringir el ámbito a "la familia".



Un poco de historia
Java nació como lenguaje para la red y sólo sucesivamente se convirtió en un verdadero lenguaje de programación. Su papel de líder para la programación no se pone en duda y, por eso, pone a disposición del programador diferentes paquetes para llevar a cabo esta programación. Como Java está muy ligado a la red se hace necesario proporcionar herramientas para acceder a distintos servicios de internet como por ejemplo un servidor web. Este es el contenido del paquete:

Interfaces
ContentHandlerFactory
FileNameMap
SocketImplFactory
SocketOptions
URLStreamHandlerFactory

Excepciones
BindException
ConnectException
MalformedURLException
NoRouteToHostException
ProtocolException SocketException
UnknownHostException
UnknownServiceException

Informacion tamada de

http://www.monografias.com/trabajos16/java/java.shtml
http://www.htmlpoint.com/guidajava/java_14.htm
http://www.lab.dit.upm.es/~lprg/material/apuntes/packages/packages.htm
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/paquetes.htm


Juan pablo chavez
221219103

No hay comentarios: