Documentos de Académico
Documentos de Profesional
Documentos de Cultura
3.1. Definicion conceptual de componentes paquetes librerias - See more at: http://mitecnologico.com/sistemas/Main/TopicosAvanzadosDeProgramacion#sthas h.btPHSYbn.dpuf
JOSUE JONATHAN PEALOZA PIEDRA MATERIA: TOPICOS AVANZADOS DE PROGRAMACIN 4TO SEMESTRE PROFA: MARY SANDRA RODRIGUEZ CHAVEZ 19 DE MARZO DE 2012
Pgina 1
INDICE:
BIBLIOGRAFA32
Pgina 2
Componente: Es una clase abstracta que representa todo lo que tiene una posicin, un tamao, puede ser pintado en pantalla y puede recibir eventos. Los Objetos derivados de la clase Componente que se incluyen en el Abstract Windows Toolkit son los que aparecen a continuacin:
Un paquete en Java es lo que su nombre lo indica, un paquete o conjunto de clases, lgicamente, que tienen cosas en comn. Lgicamente un programado puede agruparlas con o sin criterio, pero lo ideal es que se dediquen a funciones especficas. Tambin los paquetes definen una jerarqua de directorios, que permiten igualmente agrupas las clases, cosa de desplegar los archivos mas ordenadamente.
JOSUE JONATHAN PEALOZA PIEDRA Pgina 3
LIBRERAS La utilizacin de objetos dinmicos supone dejar pendiente en el montaje de la aplicacin el enlace de dichos objetos. Cuando la aplicacin est en ejecucin, y slo entonces, se produce el enlace (dinmico) con los objetos contenidos en la librera. La creacin de libreras dinmicas corre a cargo del enlazador o montador (en nuestro caso el ld) aunque tambin es posible indicar al compilador las opciones necesarias para el montaje y de ese modo, ser l quien se encargue de pasrselas al montador. Cuando se crea un objeto dinmico es necesario que dicho cdigo objeto sea independiente de la posicin, para conseguir este tipo de cdigo debe especificarse al compilador la opcin -fPIC (Position IndependentCode). Dicho flag debe indicarse tanto en la compilacin como en el montaje de la librera. Para montar los objetos es necesario adems indicar la opcin -shared para que el resultado sea un fichero objeto compartible.
USO
DE
COMPONENTES
(VISUALES
NO
VISUALES)
Un componente desde el punto de vista de programacin esta compuesto por varias secciones y el conjunto de todas ellas dan lugar a la creacin de dichocomponente. Por tanto, primero para no perder el norte, vamos a empezar definiendo elconvenio que es utilizado para organizar dichas secciones por TinyOs. En general, uncomponente posee tres grandes secciones que son:
Configuration, Implementation,Modul e. Estas tres secciones han de estar obligatoriamente presentes en cualquiercomponente aunque puedan estar vacas. El estndar de T i n y O s determina, que las secciones de Configuration eImplementatin han de ir en un fichero que recibir el nombre del componente con laextensin .nc y la tercera seccin de Module deber de ir en otro fichero
JOSUE JONATHAN PEALOZA PIEDRA Pgina 4
incorpora la extensin .h en la misma. Ahora que ya sabes cuales son las secciones que va a contener cada ficherovamos a empezar a explicar cada una de ellas. ImplementatinEsta seccin se va a encargar de definir las conexiones que hay entre losdiferentes componentes que utiliza la aplicacin, esto es debido a que si recordamos unpoco, se ha comentado que la programacin de un componente (que se llevar a cabo en la seccin de module) se hace utilizando interfaces y dichas interfaces para poderutilizarlas las ha de proporcionar un componente, entonces bsicamente es esta seccinse definen cuales son los componentes que proporcionan las interfaces a
nuestraaplicacin (por lo general sern componentes primitivos). Una vez que conocemos la finalidad de esta seccin y llegados a este punto, vamos a insertar un concepto nuevo que es la diferencia que existe entre una aplicacinque esta ya disponible para ser ejecutada en un sensor y un componente cualquiera. Ladiferencia es muy poca, y consiste en que una aplicacin es un componente comocualquier cosa en este lenguaje que en su seccin de implementacin hace uso de uncomponente especial denominado Main. BOTONES Creacin de botones como objetos. Se pueden crear objetos Button con el operador new como se muestra a continuacin:
La cadena utilizada en la creacin del botn aparecer en el botn cuando se visualice en pantalla. Esta cadena tambin se devolver para utilizarla como identificacin del botn cuando ocurra un evento.
EVENTOS BUTTON Cada vez que el usuario pulsa un botn, se produce un evento. Los eventos de pulsacin de un botn se pueden capturar sobrecargando el mtodo action ():
SINTAXIS: public Boolean action (Event evt, Object obj) { if (evt.targetinstanceof Button) System.out.println( (String)obj ); else System.out.println( "Evento No-Button" ); }
La distincin entre todos los botones existentes se puede hacer utilizando el objeto destino, pasado por el objeto Event y comparndolo con los objetos botn que se colocaran en la interfaz.
BOTONES DE PULSACIN Los botones presentados en el applet son los botones de pulsacin estndar; no obstante, para variar la representacin en pantalla y para conseguir una interfaz ms limpia, AWT ofrece a los programadores otros tipos de botones como los que se muestran a continuacin:
BOTONES DE SELECCIN Los botones de seleccin se pueden agrupar para formar una interfaz de botn de radio (CheckboxGroup), que son agrupaciones de botones Checkbox en las que siempre hay un nico botn activo.
JOSUE JONATHAN PEALOZA PIEDRA Pgina 6
BOTONES AUTOCONTENIDOS La naturaleza orientada a objetos de Java nos da la posibilidad de crear botones completamente auto contenido. En este tipo de botn, se construye el manejador de eventos dentro de la propia clase extendida de botn. Se pueden aadir estos botones a la aplicacin, sin tener que preocuparse de los eventos que pudieran generar.
CANVAS Si tenemos un applet que trabaja con imgenes directamente, ya sea un applet grfico o de dibujo, los lienzos o zonas de dibujo llamados Canvas resultan muy tiles.
Los Canvas son un Componente bsico que captura eventos de exposicin (expose). La clase base Canvas no responde a los eventos, sin embargo se puede crear una subclase que sea la encargada de manipular los eventos.
Al permitir saltarse el manejo normal de eventos, y junto con los mtodos de representacin grfica, los Canvas simplifican la produccin de applet que necesitan una nica funcionalidad para distintas reas.
BOTON DE MARCACION Los botones de marcacin llamados Checkbox se utilizan frecuentemente como botones de estado. Proporcionan informacin del tipo S o No (true o false). El estado del botn se devuelve en el argumento Objeto de los eventos Checkbox; el argumento es de tipo booleano: verdadero (true) si la caja se ha seleccionado y falso (false).
Tanto el nombre como el estado se devuelven en el argumento del evento, aunque se pueden obtener a travs de los mtodos getLabel () y getState () del objeto Checkbox.
JOSUE JONATHAN PEALOZA PIEDRA Pgina 7
BOTONES DE LISTA Los botones de seleccin en una lista son llamados Choice y estos permiten el rpido acceso a una lista que contenga una determinada cantidad de elementos.
CONTAINER
PANELES La clase Panel es el ms simple de los Contenedores de Componentes grficos. Se crea una clase no-abstracta Conteiner que sirva de base a los applet y a otras pequeas aplicaciones. La clase Panel consta de dos mtodos propios:
Constructor: cuyo fin es crear un nuevo Panel con un LayoutManager de tipo FlowLayout que es el de defecto. Mtodo addNotify () que, sobrecargando la funcin del mismo nombre en la clase Conteiner el cual llama al mtodo createPanel () del Toolkit adecuado el cual, creando as un PanelPeer.
El AWT enviar as al Panel al applet y todos los eventos que sobre l ocurran. El uso de Paneles permite que las aplicaciones puedan utilizar mltiples layouts, es decir, que la disposicin de los componentes sobre la ventana de visualizacin pueda modificarse con mucha flexibilidad. Permite que cada Contenedor pueda tener su propio esquema de fuentes de caracteres, color de fondo, zona de dilogo, etc.
VENTANAS Una Ventana genrica, Windows, puede utilizarse simplemente para que sea la clase padre de otras clases y se puede intercambiar por un Dilogo (Dialog) sin prdida de funcionalidad.
JOSUE JONATHAN PEALOZA PIEDRA Pgina 8
MARCO DE UNA APLICACION El Contenedor de los Componentes es el Frame. Tambin es la ventana principal de la aplicacin, lo que hace que para cambiar el icono o el cursor de la aplicacin no sea necesario crear mtodos nativos; al ser la ventana un Frame, ya contiene el entorno bsico para la funcionalidad de la ventana principal. Al crear un Frame, extiende la clase principal y hereda todas sus caractersticas. Tiene un mtodo el constructor, que no admite parmetros. Adems, se hace una llamada explcita al constructor utilizado es decir, al constructor de la clase padre, para pasarle como parmetro la cadena que figurar como el ttulo de la ventana. La llamada a show() es necesaria, ya que por defecto, los contenedores del AWT se crean ocultos y hay que mostrarlos. La llamada a pack() hace que los componentes se ajusten a sus tamaos correctos en funcin del Contenedor en que se encuentren situados.
ETIQUETAS Las etiquetas llamadas Label proporcionan una forma de colocar texto esttico en un panel, para mostrar informacin que no vara o que no puede ser modificada por el usuario.
LISTAS Las listas (List) aparecen en las interfaces de usuario para facilitarles la manipulacin de muchos elementos. Se crean utilizando mtodos similares a los de los botones Choice. La lista es visible todo el tiempo, utilizndose una barra de desplazamiento para visualizar los elementos que no caben en el rea que aparece en la pantalla. Para acceder a los elementos seleccionados se utilizan los mtodos getSelectedItem() o getSelectedItems(). Para listas de seleccin simple, cualquier seleccin con doble-click en la lista disparar el mtodo action() de la misma forma que con los eventos de seleccin en mens.
JOSUE JONATHAN PEALOZA PIEDRA Pgina 9
BARRAS DE DESPLAZAMIENTO Es muy comn que se utilicen en determinados applet que necesiten realizar el ajuste de valores lineales en pantalla, resulta til el uso de barras de desplazamiento (Scrollbar). Las barras de desplazamiento proporcionan una forma de trabajar con rangos de valores o de reas como el Componente TextArea, proporcionando las barras automticamente.
Este tipo de interfaz proporciona al usuario un punto de referencia visual de un rango y al mismo tiempo la forma de cambiar los valores. Por ello, las barras de desplazamiento son Componentes un poco ms complejos que los dems, reflejndose esta complejidad en sus constructores. indicar: Su orientacin. Su valor inicial. Los valores mnimo y mximo que puede alcanzar. Porcentaje de rango que estar visible. Al crearlos hay que
Las barras de desplazamiento generan eventos; pero se debe utilizar el mtodo handleEvent() directamente, en lugar del mtodo action(). El destino del evento ser un objeto de la clase Scrollbar, a partir de ste se obtiene la posicin de la barra de desplazamiento.
AREAS DE TEXTO
Pgina 10
CAMPOS DE TEXTO Para la entrada directa de datos se suelen utilizar los campos de texto, que aparecen en pantalla como pequeas cajas que permiten al usuario la entrada por teclado. Los campos de texto o TextField se pueden crear vacos con una longitud determinada, rellenos con texto predefinido.
USO DE LIBRERAS PROPORCIONADAS POR EL LENGUAJE Java es un lenguaje de programacin desarrollado para una multitud de plataformas y procesadores. Consideremos los dos tipos de aplicaciones grficas ms comunes. Modelos de Frames y Applets, se pueden construir usando cualquiera de las dos galeras de componentes visuales, son: JAVA AWT: Es la librera visual ms antigua de java usando esta librera, se podrn construir los tres tipos de programas mas comunes como son FRAME, WINDOW y APPLET. JAVA SWING: Es la librera de componentes visuales ms nueva que proporciona java, usando esta librera se podrn construir los tres tipos de programas o aplicaciones que son JFRAME, WINDOW Y JAPPLET. Un applet es un programa en java que se mandan a una mquina o PC remota para que los ejecuten o lo corra, cuando este applet de llegada a las mquinas remotas va browser, dicho browser es quien activa la mquina virtual de java que da la orden de compilacin y ejecucin, es decir java programa.applet.
Pgina 11
Java. lang
Coleccin de tipo bsico siempre importados a cualquier unidad de compilacin. Aqu estn las declaraciones de objetos, clases, wrappers.
Interfaces Clases. Cloneables Boolean Comparable Byte Runnable Character ClassLoader Compiler Double Float InheritableThreadLocal Interger Long Math Number Object System Thread VoidString, etc...
Java.io Archivos de stream y acceso aleatorio. Librera estndar de entrada y salida. Interfaces Clases DataInputBufferedInputStream DataOutputBufferedOutputStream ExternalizableBufferedReader FilefilterBufferedwrite FilenameFilterByteArrayInputStream OdjectInputByteArrayOutputStream SerializableDataOutputStream File
JOSUE JONATHAN PEALOZA PIEDRA Pgina 12
Interfaces Clases ContentHandlerFactory Authenticator DatagramSocketImplFactoryContentHandler FileNameMapDatagramPacket SocketOptionsDatagramSocketImpl URLStreamHanlerFactoryHttpURKConnection URL, etc..
Java.util Clase como de diccionarios, tabla de hash, stack, tcnica de codificacin hora, fecha, etc.
Interfaces Clases Collection AdstractCollection Comparator AdstracList Enumeration AdstrectMap EventListenerAdstrectSecquentialList InteratorAdstractSet List ArreyList Observer Collection SortedSetEventObject Random Stack Timer Vector Date,etc.
Java.Awt AbstractWindowingToolkit que proporciona una capa abstracta que permita llevar una aplicacin en java de un sistema de ventanas a otro. Contiene clases para componentes bsicos de la interfaz, tales como eventos, colores, tipos de letra, botones, campos de texto.
Los contenedores contienen componentes, que son los controldores bsicos. No se usan posiciones fijas de los componentes, si no estan situados a traves de una disposicin controlado (layouts) El comn denominador de mas bajo nivel se acerca al teclado, ratn y manejo de eventos. Alto nivel de abstraccin respecto al entorno de ventanas en que se ejecute la aplicacin (no hay reas clientes, ni llamadas a X ). La arquitectura de la aplicacin es dependiente del entorno de ventanas, en vez de tener un tamao fijo. Carece de un formato de recursos. No se puede separar el cdigo de lo que es propiamente interfaz. No hay ningn diseador de interfaz toda va. Interfaces Clases ActiveEventAlphaComposite AdjustableAWTEvent
Java.applet El paquete java.applet permite la creacin de appletsatraves de la clase Applet, proporciona interfaces para conectar un applet a un documento web y para audicin de audio. Interfaces Clases AppletContext Applet AppletStub AudiClip
Java.math Proporciona clculos en entero grande y real grande. Clases Bigdecimal Biginteger Adems de la clase Math.
Esta es la clase que representa la librera matemtica de Java. Las funciones que contiene son las de todos los lenguajes, parece que se han metido en una clase solamente a propsito de agrupacin, por eso se encapsulan en Math, y lo mismo sucede con las dems clases que corresponde a objetos que tiene un tipo equivalente (carcter, Float, etc.)
JOSUE JONATHAN PEALOZA PIEDRA Pgina 14
Java.rmi Este paquete hace posible que un objeto se ejecute en una maquina virtual Java invoque mtodos de otro objeto que se ejecuta en la mquina virtual distinta; dicha mquina virtual pueden encontrarse en ordenadores diferentes conectados a travs de una red TCP/IP.
Java.text Contiene clase que permiten dar formato especializado a fechas, nmeros y mensajes. Interfaces Clases AttributedChacterIterator Annotation CharacterIteratorAttibutedCharacterIterator ChoceFormat DateFormat Format MessageFormat NumberFormat ParsePosition
Java.sound.midi Paquete con clase e interfaces que permitan la captura, procesamiento y reproduccin de msica MIDI. Interfaces Clases ControllerEventListener Instrument MataEventListenerMeteMessage MidiChannel MidiDevice.info MidiDeviceMidiEvent Receiver MidiFileFormat SequecerMidemessage
Pgina 15
IntefacesClases Array Date Blob DriverManager CallabeStatementDriverPropertyInfo ClobSQLPermission Connecction Timer DatabaseMetaDate Timestamp Driver Type Ref SQLData SQLInput SQLOutput Struct
JAVA.SWING Paquete que mejora e AWT, proporcionando un conjunto de componentes que se ejecutan de manera uniforme en todas las plataformas. Interfaces Clases Action AbstractAction ComboBoxEditorActonMap Icon Box.Filler ListModelCellRendererPane MenuElementDebugGraphics WindowsConstantsDefaulListSelectionModel JApplet Jbutton JCheckBox JFrameJMenu JLabel JPanel JTextField JTree JWindows
JOSUE JONATHAN PEALOZA PIEDRA Pgina 16
EJEMPLOS DONDE PODEMOS NOTAR EL USO DE LAS LIBRERAS. importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; public class AparienciaVisual extends JFrame { private final String cadenas[] = { "Metal", "Motif", "Windows" }; privateUIManager.LookAndFeelInfoapariencias[]; privateJRadioButtonopcin[]; privateButtonGroupgrupo; privateJButtonbotn; privateJLabeletiqueta; privateJComboBoxcuadroCombinado; String s1=""; publicAparienciaVisual() { super( "apariencia visual" ); Container contenedor = getContentPane(); // establecer panel para regin NORTH de esquema BorderLayout JPanelpanelNorte = new JPanel(); panelNorte.setLayout( new GridLayout( 3, 1, 0, 5 ) ); // estableceretiquetapara panel NORTH etiqueta = new JLabel( "sta es la apariencia visual Metal seleccionada",
// CREA UN ARCHIVO DE ACCESO ALEATORIO, ESCRIBIENDO 100 REGISTROS VACOS EN EL DISCO. import java.io.*; importjavax.swing.*; public class CrearArchivoAleatorio { private static final int NUMERO_REGISTROS = 100; // permitir al usuario seleccionar el archivo a abrir privatevoidcrearArchivo() { // mostrar cuadro de dilogo para que el usuario pueda seleccionar el archivo JFileChooserselectorArchivo = new JFileChooser();
JOSUE JONATHAN PEALOZA PIEDRA Pgina 17
CREACION DE COMPONENTES (VISUALES Y NO VISUALES) DEFINIDOS POR EL USUARIO. Se puede establecer muchas clasificaciones para los componentes. Una de ellas es la de visuales o controles, frente a no visuales. Un componente es visual cuando tiene una representacin grfica en tiempo de diseo y ejecucin (botones, barras de scroll, cuadros de edicin, etc.), y se dice no visual en caso contrario (temporizadores, cuadros de dilogo-no visibles en la fase de diseo, etc). Por lo dems no existen ms diferencias entre ellos, excepto, claro est, las derivadas de la visualizacin del componente. Los componentes no visuales se pueden colocar en los formularios de la misma manera que los controles, aunque en este caso su posicin es irrelevante. Para empezar, los componentes visuales podemos dividirlos a su vez en dos tipos: -Componentes interactivos: permiten que el usuario final los manipule, ya sea introduciendo datos, seleccionado elementos, etc. De forma que estos componentes pueden recibir el foco (con SetFocus) as como los eventos propios del teclado y del ratn. Normalmente, el propio sistema operativo es el encargado de dibujar el aspecto del componente, haciendo el componente las llamadas correspondientes para que este aspecto cambie. -Componente grficos: el propio componente es el encargado de dibujar en la pantalla lo que crea oportuno, bien a travs de las funciones bsicas del API de Windows (con el objeto TCanvas) o bien a travs de otras libreras grficas, como OpenGL, DirectX, etc. Estos componentes, no suelen recibir eventos del usuario final, aunque si eventos del propio programador, ya que su cometido no suele ir ms all de mostrar ciertos grficos o imgenes en la pantalla. Si tuviramos que crear un componente interactivo desde el principio, sera demasiado complejo, ya que tendramos que luchar encontrar el propio API del sistema operativo, gestionando sus mensajes, las llamadas las funciones a bajo nivel, etc. Sin embargo, podemos aprovechar la mayora del trabajo hecho
JOSUE JONATHAN PEALOZA PIEDRA Pgina 18
Sobre estos componentes se podrn hacer ms agrupaciones y quiz la ms significativa fuese la que diferencie a los componentes segn el tipo de entrada. A si habra componentes con entrada de tipo no-textual como los botones de pulsacin (Button), las listas (List), botones de marcacin (checkbox), botones de seleccion (Choice), y botones de comprobacin (CheckboxGroup); componentes de entrada y salida textual como los campos de texto (TextField), las reas de texto (TextArea) y las etiquetas (Label); y, otros componentes sin acomodo fijo en ningn lado, en donde se encontraran componentes como las barras de desplazamiento(Scrollbar), zonas de dibujo (Canvas) e incluso los contenedores (Panel, Window, Dialog y Frame), que tambin pueden considerarse como componentes.
JOSUE JONATHAN PEALOZA PIEDRA Pgina 21
Los paquetes son grupos de clases relacionadas; ayudan a organizar su cdigo y proporcionan otra capa encapsulamiento. En programacin, los paquetes, con frecuencia son tiles para agrupar las piezas relacionadas de un programa. Un paquete sirve para dos propsitos: primero, suministra un mecanismo por el cual piezas relacionadas de un programa pueden ser organizadas como una unidad. Se debe tener acceso a las clases definidas dentro de un paquete a travs de su nombre de paquete. As, un paquete proporciona la manera de nombrar una coleccin de clases. Segundo, un paquete participa en los mecanismos de control de acceso en java. Las clases definidas dentro de un paquete pueden hacerse privadas a ese paquete y no accesibles por cdigo fuera del paquete. De este modo, el paquete suministra un medio por el cual las clases pueden ser encapsuladas.
DEFINIR UN PAQUETE:
Todas las clases en Java pertenecen a algn paquete. Como se mencion anteriormente, cuando no se especifica la declaracin package se usa el
paquete predeterminado (o global). Adems, el paquete predeterminado no tiene nombre, lo que lo hace transparente. Aunque el paquete predeterminado es vlido para programas de prueba cortos, es inadecuado para aplicaciones reales.
Para crear un paquete, coloque un comando package en la parte superior del archivo fuente de java. Las clases declaradas dentro de ese archivo pertenecern al paquete especificado. Puesto que un paquete define un espacio de nombre, los nombres de las clases que coloque dentro del archivo se convierten en parte de ese espacio del nombre del paquete.
package Project1;
Java usa el sistema de archivo para manejar los paquetes con cada paquete almacenado en su propio directorio. Por ejemplo, los archivos .class para las clases que usted declare sean partes de Project1 debe guardarse en un directorio llamado Project1.
Puede crear una jerarqua de paquetes. Para hacerlo, simplemente, separe cada nombre de paquete del inmediatamente anterior, por medio de un punto. A continuacin, la forma general de una declaracin de paquete multinivel:
package pack1.pack2.pack3....packN;
Por supuesto, debe crear directorios que soporten la jerarqua del paquete que crea. Por ejemplo:
paquetex.y.z;
Debe almacenarse en ...../X/Y/Z, donde ... especifica la ruta a los directorios especficos.
Como se explic, los paquetes son reflejados por los directorios. Esto provoca una pregunta importante: Cmo sabe el sistema en tiempo de ejecucin de java dnde buscar los paquetes que usted cre? La respuesta tiene dos partes. Primero, por defecto: el sistema de tiempo de ejecucin de java busca en el directorio un curso como su punto de partida. As, si sus archivos de clase estn en el directorio actual, o en un subdirectorio del directorio actual, ellos se
Pgina 25
packageMyPack;
Para que un programa encuentre MyPack, una de estas opciones debe ser cierta: el programa es ejecutado desde un directorio inmediatamente anterior a MyPack, o CLASSPATH debe crearse para incluir la ruta a MyPack. La primera alternativa es la mas fcil (y no requiere un cambio a CLASSPATH), pero la segunda le permite a su programa encontrar MyPack sin importar en cual directorio esta el programa.
Teniendo en cuenta la discusin anterior pruebe este ejemplo breve de paquete. ste crea una base de datos simple de libro que esta contenido dentro del paquete BookPack.
//Demostracin del uso de un paquete packageBookPack; class Book{ private String title; private String author; privateintpubDate; Book (String t, String a, int d){ title= t; author= a; pubDate= d; } void show( ) { System.out.println (title); System.out.println (author); System.out.println (pubDate);
JOSUE JONATHAN PEALOZA PIEDRA Pgina 26
classBookDemo { public static void main ( String args[ ] ){ Book book [ ] = new Book [5]; book[0] = new Book ("java Beginners Guide", "Schildt", 2001); book[1] = new Book ("java 2 programers Reference", "Schildt", 2000); book[2] = new Book ("HTML Programers Reference", "Powell and Whitworth", 1998); book[3] = new Book ("Red Storm Rising", "Clancy", 1986); book[4] = new Book ("On the Road", "Kerouac", 1955); for (int i=0; i <book.length; i++) book[ i ].show( ); } }
Llame este archivo BookDemo.java y colquelo en un directorio de nombre BookPack. Luego, compile el programa. Asegrese de que el archivo resultante .class est tambin en el directorio BookPack. Luego trate de ejecutar la clase, usando la siguiente linea de comando:
javaBookPack. BookDemo
Recuerde, necesitar estar en el directorio anterior de BookPack cuando ejecute este comando o hacer que su variable ambiental CLASSPATH, este configurada apropiadamente. Como se dijo, BookDemo y Book ahora son parte del paquete BookPack. Esto quiere decir que BookDemo no puede ser ejecutado por s mismo. Es decir, usted no puede usar esta lnea de comando.
javaBookDemo
Pgina 27
La visibilidad de un elemento est determinada por su especificacin de accesos, private, public. protected o por defecto, y el paquete en el que ste resida.De este modo, la visibilidad de un elemento est determinada por su visibilidad dentro de la clase y su visibilidad dentro del paquete. Si un miembro de una clase no tiene especificador de acceso explcito, entonces ste sera visible desde dentro de su paquete pero no por fuera de l. Por esto debe usar como la especificacin de acceso por defecto para los elementos que quiera mantener como privados en un paquete, pero |pblico| dentro de ese paquete. Los miembros declarados public explcitamente son visibles en todas partes, incluidas en clases y paquetes diferentes. No hay restriccin en su uso o acceso.
Un miembro private es accesible slo para otro miembro de su clase y no es afectado por su afiliacin a un paquete. Un miembro especificado como protected es accesible dentro de su paquete y a todas las subclases. incluidos. subclases en otros paquetes. Una clase tiene slo dos posibles niveles de acceso : por defecto y pblico. Cuando una clase se declare como prublic, sta es accesible por cualquier otro cdigo. Si una clase tiene acceso por defecto, puede tener acceso a ella slo
Pgina 28
IMPORTAR PAQUETES:
Cuando use una clase de otro paquete, puede calificar completamente el nombre de la clase cuete.on el nombre de su paquete. Sin embargo, tal aproximacin puede fcilmente llegar a ser aburrida y complicada, si las clases que est calificando son profundamente anidadas en la jerarqua del paquete. Usando import puede traer uno o ms miembros de un paquete a la vista. Esto le permite usar directamente aquellos miembros, sin hacer explcita las calificaciones del paquete. A continuacin, la forma general de la declaracin import:
importpkg.nombre de clase;
Donde pkg es el nombre del paquete, que puede incluir su ruta (path) completa y nombre de clase el de la clase importada. Si desea importar todo el
contenido de un paquete, use un asterisco (*) para el nombre de clase. A continuacin, ejemplos de las dos formas:
importMyPack.MyClass importMyPack.*;
En el primer caso, la clase MyClass es importada de MyPack. En el segundo,todas las clases en MyPack son importadas. En un archivo fuente de java, las declaraciones import ocurren en seguida de la declaracin package (si existe) y antes de cualquier definicin de clase. Usted puede usar import para traer el paquete BookPack a la vista, de modo que la clase Book pueda usarse sin calificacin. Para hacer esto, slo adicione la declaracin import sobre cualquier archivo que use Book.
importBookPack,*;
JOSUE JONATHAN PEALOZA PIEDRA Pgina 29
Por ejemplo, a continuacin est la clase UseBook recodificada para usar import
//usodel book desdeBookPack classUseBook { public static void main ( String args []) {
Book book [] =new Book [5]; book[0] = new Book ("Java Beginners Guide", "Schildt", 2001); book[1] = new Book ("Java 2 programmer Reference", "Schildt", 2000); book[2] = new Book ("HTML Programmer Reference", "Pawell and Whitworth", 1998); book[3] = new Book ("Red Storm Rising ", "Clancy", 1986); book[4] = new Book ("On the Road", "Kerouac", 1955); for (int i=0; i <book.length; i++) book[i].show(); } }
Esta libreria de clase con frecuencia se refiere a la Interfaz de Programacin de Aplicaciones de java (Java API, ApplicationProgramming Interface). La Java API se almacena en paquetes. En la parte superior de la jerarqua del paquete est java. Descendiendo desde java hay varios subpaquetes, incluidos estos:
java.lang: contiene un gran nmero de clases de propsito general java.io: contiene las clases de E/S
Pgina 30
El paquete java.lang es nico porque es importado automticamente dentro de cada programa java.
Pgina 31
BIBLIOGRAFA:
http://itslmg.wordpress.com/category/unidad-ii-creacion-de-componentes-y-libreriasdinamicas/
http://topicos-selectosdeprogramacion-itiz.blogspot.mx/p/creacion-de-componentes.html
http://www.mitecnologico.com/Main/DefinicionCreacionPaquetesLibreria
http://progitca.blogspot.mx/2012/03/instituto-tecnologico-de-cerroazul.html
http://msdn.microsoft.com/es-es/library/9a81d32x(v=vs.80).aspx
http://progitca.blogspot.mx/2012/03/cerro-azul-ver-instituto-tecnologico-de.html
http://progitca.blogspot.mx/2012/03/35-creacion-y-uso-de-paqueteslibrerias.html
Pgina 32