Programacion no numerica ii

307 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
307
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Programacion no numerica ii

  1. 1. Instituto Universitario Politécnico Santiago Mariño Escuela de Ingeniería de Sistemas Porlamar-Estado Nueva Esparta Programación No Numérica II APLICACIONES JAVA. Realizado Por: BR. Rolman Calderín/ C.I: 19682811 Saia – Profesor: Diógenes Rodriguez. Porlamar, Junio de 2013
  2. 2. Introducción Java es relativamente un nuevo lenguaje de programación debido a los continuos cambios, la API (application programming interface) java incorpora muchos aspectos que en cualquier otro lenguaje son extensiones, threads, ejecución remota, componentes, seguridad, acceso a bases de datos, entre otros. Por eso es un lenguaje ideal para aprender, porque incorpora todos estos conceptos de un modo estándar, mucho más sencillo y claro que con las citadas extensiones de otros lenguajes. El lenguaje java posee varios atributos dentro de ello podemos destacar que es un lenguaje simple, esta orientado a objetos, es robusto, seguro, de arquitectura neutra, multitarea, dinámico, entre muchas otras buenas cualidades. Los programas desarrollados en Java presentan diversas ventajas frente a otros lenguajes, en lo que podemos destacar que posee una ejecución como aplicación independiente, ejecución como Applet, ejecución como Servlet, ente otros. Las Applets en Java cumplen una gran funcionalidad y fue pensado para ser colocados dentro de una página web. Estos pueden ser interpretados por cualquier navegador con capacidades Java. Estos programas se insertan en las páginas usando una etiqueta especial, como también se insertan vídeos, animaciones flash u otros objetos. Hoy día mediante applets se pueden integrar en las páginas web aplicaciones multimedia avanzadas, incluso con imágenes 3D o sonido y vídeo de alta calidad.
  3. 3.  Entrada y Salida de Datos en Java Según la pagina web: http://www.ciberaula.com/articulo/java_io visitada el 29/06/2013 nos dice: Cualquier programa realizado en Java que necesite llevar a cabo una operación de I/O lo hará a través de un stream. Un stream, cuya traducción literal es "flujo", es una abstracción de todo aquello que produzca o consuma información. Podemos ver a este stream como una entidad lógica. La vinculación de este stream al dispositivo físico la hace el sistema de entrada y salida de Java. Se ve pues la eficacia de esta implementación pues las clases y métodos de I/O que se necesita emplear son las mismas independientemente del dispositivo con el que se este actuando, luego, el núcleo de Java, sabrá si tiene que tratar con el teclado, el monitor, un sistema de ficheros o un socket de red liberando a nuestro código de tener que saber con quién está interactuando. Para traer la información, un programa abre un stream sobre una fuente de información (un fichero, memoria, un socket) y lee la información seriamente, de esta forma: Similarmente, un programa puede enviar información a un destino externo abriendo un stream sobre un destino y escribiendo la información seriamente, de esta forma:
  4. 4. Byte streams: nos proporciona un medio adecuado para el manejo de entradas y salidas de bytes y su uso lógicamente está orientado a la lectura y escritura de datos binarios. El tratamiento del flujo de bytes viene gobernado por dos clases abstractas que son InputStream y OutputStream. Cada una de estas clases abstractas tienen varias subclases concretas que controlan las diferencias ente los distintos dispositivos de I/O que se pueden utilizar. Así mismo, estas dos clases son las que definen los métodos que sus subclases tendrán implementados y, de entre todas, destacan las clases read() y write() que leen y escriben bytes de datos respectivamente. Character streams: Proporciona un medio conveniente para el manejo de entradas y salidas de caracteres. Dichos flujos usan codificación Unicode y, por tanto, se pueden internacionalizar. Una observación: Este es un modo que Java nos proporciona para manejar caracteres pero al nivel más bajo todas las operaciones de I/O son orientadas a byte. Al igual que la anterior el flujo de caracteres también viene gobernado por dos clases abstractas: Reader y Writer. Dichas clases manejan flujos de caracteres Unicode. Y también de ellas derivan subclases concretas que implementan los métodos definidos en ellas siendo los más destacados los métodos read() y write() que, en este caso, leen y escriben caracteres de datos respectivamente. El ejemplo siguiente crea tres archivos: f1, f2 y f3. El primer objeto File se construye utilizando un trayecto de directorio como único argumento. El segundo se crea utilizando dos argumentos, el trayecto y el nombre de archivo. El tercero se crea utilizando el trayecto de archivo asignado a f1 y un nombre de archivo; f3 refiere al mismo archivo que f2.
  5. 5. File f1 = new File("/"); File f2 = new File("/","autoexec.bat"); File f3 = new File(f1, "autoexec.bat");  Clases de Java Para Lectura y Escritura de Datos Según la pagina web: http://chuwiki.chuidiang.org visitada el 29/06/2013 nos dice: Una clase es una agrupación de datos (variables o campos) y de funciones (métodos) que operan sobre esos datos. A estos datos y funciones pertenecientes a una clase se les denomina variables, métodos o funciones miembro. La programación orientada a objetos se basa en la programación de clases. Un programa se construye a partir de un conjunto de clases. Una vez definida e implementada una clase, es posible declarar elementos de esta clase de modo similar a como se declaran las variables del lenguaje (int,double, string). Los elementos declarados de una clase se denominan objetos de la clase. De una única clase se pueden declarar o crear numerosos objetos. La clase es lo genérico: es el patrón o modelo para crear objetos. Podemos abrir un fichero de texto para leer usando la clase FileReader. Esta clase tiene métodos que nos permiten leer caracteres. Sin embargo, suele ser habitual querer las líneas completas, bien porque nos interesa la línea completa, bien para poder analizarla luego y extraer campos de ella. FileReader no contiene métodos que nos permitan leer líneas completas, pero sí BufferedReader. Afortunadamente, se puede construir un BufferedReader a partir del FileReader de la siguiente forma: 1 2 3 4 5 File archivo = new File ("C:archivo.txt"); FileReader fr = new FileReader (archivo); BufferedReader br = new BufferedReader(fr); ... String linea = br.readLine(); Si se quiere añadir al final de un fichero ya existente, simplemente se debe colocar un flag a true como segundo parámetro del constructor de FileWriter.
  6. 6.  Entrada y Salida Estándar (Teclado y Pantalla) Según http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/archivos/teclado.htm esta pagina web visitada el 29/06/2013 nos dice: La entrada/salida estándar (normalmente el teclado y la pantalla, respectivamente) se definen mediante dos objetos que puede usar el programador sin tener que crear flujos específicos. La clase System tiene un miembro dato denominado in que es una instancia de la clase InputStream que representa al teclado o flujo de entrada estándar. Sin embrago, el miembro out de la clase System es un objeto de la clase PrintStream, que imprime texto en la pantalla (la salida estándar). Para leer un carácter solamente tenemos que llamar a la función read desde System.in. try{ System.in.read(); }catch (IOException ex) { } Obligatoriamente, el proceso de lectura ha de estar en un bloque try..catch. Esta porción de código es la que se ha empleado en muchas aplicaciones para detener la ejecución de una aplicación hasta que se pulse la tecla “Retorno”. Para leer un conjunto de caracteres hasta que se pulse la tecla Retorno se escribe: StringBuffer str=new StringBuffer(); char c; try{ while ((c=(char)System.in.read())!='n'){ str.append(c); } }catch(IOException ex){} La clase StringBuffer es una clase que nos permite crear strings. Contiene métodos para añadir nuevos caracteres a un buffer y convertir el resultado final en un string. Las
  7. 7. principales funciones miembro soninsert y append. Usamos una versión de esta última función para añadir un carácter al final de un objeto de la clase StringBuffer. Para convertir un objeto str de la clase StringBuffer a String se usa la función miembro toString. Esta llamada se hace de forma implícita cuando dicho objeto se le pasa a System.out.println. System.out.println(str); Finalmente, se ha de hacer notar, que la función read miembro de InputStream devuelve un int que es promocionado a char. Existe la posibilidad de conectar el objeto System.in con un objeto de la clase InputStreamReader para leer los caracteres tecleados por el usuario. Esta conexión se realiza mediante la sentencia: Reader entrada = new InputStreamReader(System.in); Para leer una sucesión de caracteres se emplea un código similar StringBuffer str=new StringBuffer(); char c; try{ Reader entrada=new InputStreamReader(System.in); while ((c=(char)entrada.read())!='n'){ str.append(c); } }catch(IOException ex){} Para imprimir los caracteres leídos se escribe como en la sección anterior: System.out.println(str); Podemos usar la segunda versión de la función read para leer el conjunto de caracteres tecleados por el usuario. char[] buffer=new char[255];
  8. 8. try{ Reader entrada=new InputStreamReader(System.in); int numBytes=entrada.read(buffer); System.out.println("Número de bytes leídos "+numBytes); }catch(IOException ex){ } En esta segunda porción de código, se lee un conjunto de caracteres hasta que se pulsa la tecla Retorno, los caracteres se guardan en el array buffer. La función read devuelve el número de caracteres leídos. Para imprimir los caracteres leídos se crea un objeto str de la clase String a partir de un array de caracteres buffer, empleando uno de los constructores de dicha clase. A continuación, se imprime el string str. String str=new String(buffer); System.out.println(str);  Lectura y Escritura de Archivos Según la pagina web: http://es.scribd.com/doc/13562650/130/Lectura-y-Escritura-de- Archivos-II visitada el 29/06/2013 nos dice: Las clases FileInputStream y FileOutputStream permiten leer y escribir bytes en archivos binarios. Las clases FileReader y FileWriter permiten leer y escribir caracteres en archivos de texto. Cada llamada a read() o write() accede al disco para un único byte o un único carácter ⇒ poco eficiente. Para mejorarlo, se utilizan las clases que implementan un buffer, de modo que se lee del disco (o se escribe) un conjunto de bytes o caracteres en cada acceso. En la lectura, los constructores de FileInputStream y FileReader, si no encuentran el archivo indicado, pueden lanzar la excepción FileNotFoundException. En la escritura, los constructores de FileOutputStream y FileWriter pueden lanzar la excepción IOException. Si no
  9. 9. se encuentra el archivo dado, se crea nuevo. Si ya existe, por defecto escribe desde el comienzo; pero se puede indicar que añada al final (con un 2ºparámetro true). FileInputStream fis = n e w F i l e I n p u t S t r e a m ( “ f i c h . b i n ” ) ; BufferedInputStream bis = new BufferedInputStream (fis); i n t b = b i s . r e a d ( ) ; / / l e e u n s ó l o byte, pero llena //el buffer de datos para //próximas lectura  Serialización  Serialización de un Objeto: Implementar Serializable Para que un programa java pueda convertir un objeto en un montón de bytes y pueda luego recuperarlo, el objeto necesita ser Serializable. Al poder convertir el objeto a bytes, ese objeto se puede enviar a través de red, guardarlo en un fichero, y después reconstruirlo al otra lado de la red, leerlo del fichero. Según la siguiente página web: http://chuwiki.chuidiang.org/index.php?title=Serializaci%C3%B3n_de_objetos_en_java visitada el 29/06/2013 nos dice: Para que un objeto sea serializable basta con que implemente la interfaz Serializable. Como la interfaz Serializable no tiene métodos, es muy sencillo implementarla, basta con unimplements Serializable y nada más. Por ejemplo, la clase Datos siguiente es Serializable y java sabe perfectamente enviarla o recibirla por red, a través de socket o de rmi. También java sabe escribirla en un fichero o reconstruirla a partir del fichero. public class Datos implements Serializable { public int a; public String b; public char c; } Si dentro de la clase hay atributos que son otras clases, éstos a su vez también deben ser Serializable. Con los tipos de java (String, Integer, etc.) no hay problema porque lo son. Si ponemos como atributos nuestras propias clases, éstas a su vez deben implementar Serializable. Por ejemplo
  10. 10. /* Esta clase es Serializable porque implementa Serializable y todos sus * campos son Serializable, incluido "Datos f;" */ public class DatoGordo implements Serializable { public int d; public Integer e; Datos f; }  Lectura de un Archivo en un Servidor de Internet package com.chuidiang.ejemplos; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; public class PruebaHTTP { public static void main(String[] args) { try { // Se abre la conexión URL url = new URL("http://www.chuidiang.com"); URLConnection conexion = url.openConnection(); conexion.connect(); // Lectura InputStream is = conexion.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is)); char[] buffer = new char[1000]; int leido; while ((leido = br.read(buffer)) > 0) { System.out.println(new String(buffer, 0, leido)); } } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } El código es sencillo. Se hace un new URL() con la URL en cuestión. Llamamos al método openConnection() y luego connect(). Sólo queda obtener el InputStream de lectura
  11. 11. y leer en él como mejor nos venga para nuestras necesidades. En el ejemplo se va leyendo en buffer de caracteres y sacándolo por pantalla, por lo que se obtiene en pantalla el texto html de la página cuya URL hemos abierto (suponiendo que esa URL tenga un texto html). Este ejemplo se encuentra en la página web dispuesta a continuación visitada el 29/06/2013: http://chuwiki.chuidiang.org/index.php?title=Lectura_http_y_https_desde_java  Java Foundation Classes (JFC) y Java 2D Según la pagina web: http://zarza.usal.es/~fgarcia/doc/tuto2/IV_1.htm visitada el 29/06/2013 nos dice:  Java Foundation Classes (JFC) JFC es la abreviatura de Java Foundation Classes, que comprende un grupo de características para ayudar a construir interfaces gráficos de usuario (GUIs). Se creo como una extensión de AWT. Comprende las siguientes características: o Componentes Swing. o API de accesibilidad. o Java 2D API o Soporte de Drag and Drop.  Modelo de Eventos Tanto AWT como Swing tienen en común un sistema para gestionar los eventos que se producen al interactuar con el usuario de la interfaz gráfica; su modelo de eventos. El funcionamiento del modelo de eventos se basa en la gestión de excepciones. La clase base para todos estos eventos que se pueden lanzar es la clase AWTEvent (perteneciente al paquete java.awt). El modelo de eventos de AWT depende del paquete java.awt.event, que en Swing se amplía con el paquete javax.swing.event.
  12. 12. Existen dos tipos básicos de eventos: o Físicos: Corresponden a un evento hardware claramente identificable. Ejemplo: se ha pulsado una tecla (KeyStrokeEvent). o Semánticos: Se componen de un conjunto de eventos físicos, que sucedidos en un determinado orden tienen un significado más abstracto: El usuario ha elegido un elemento de una lista desplegable (ItemEvent).  Java 2D Java2D es una de las APIs (Application Program Interface) más ricas que proporciona la edición estándar de Java (J2SE). Java 2D aborda tres áreas principales que integran Java2D: figuras geométricas, imágenes y dibujo de texto. Asimismo se introducen en profundidad los conceptos generales que pueden aplicarse a todos ellos, como pueden ser el tratamiento del color y de la transparencia, la gestión de transformaciones geométricas o la manipulación de ficheros JPEG. A medida que se van introduciendo nuevas clases de la API, éstas se van hilvanando entre sí para proporcionar al programador un mayor control sobre el aspecto de los lienzos que quiera dibujar. De esta forma se estudia, entre otras muchas cosas, el dibujo de figuras sobre fotografías digitales, la sobreimpresión de texto sobre imágenes e incluso la utilización del contorno de un texto en negrita como elemento a través del que ver una imagen de fondo. Cada uno de los conceptos necesarios se introduce desde cero, aunque se suponen conocimientos del lenguaje Java, y se proporcionan numerosos ejemplos completos que pueden ser puestos en práctica sin más modificación que la de elegir la foto preferida que se desea transformar, o modificar la cadena de texto a visualizar. Cada ejemplo se acompaña de una adecuada explicación sobre las líneas de código vitales que producen el efecto que se desea conseguir en cada caso, por lo que al lector le resultará muy cómodo realizar modificaciones personalizadas y obtener sus propios resultados. La inclusión de las
  13. 13. imágenes que resultan de cada uno de los ejemplos comentados también ayuda enormemente a la comprensión del código y facilita la asimilación de conceptos.  Java Media Framework (JMF) Según la pagina web: http://blogdejuls.blogspot.com/2007/04/java-media-framework.html visitada el 29/06/2013 nos dice: JMF es una API que sirve para incluir multimedia en las aplicaciones de Java, funciona básicamente, recibiendo el contenido multimedia de alguna fuente, para después procesarlo y entregarlo en alguna salida multimedia. Para entender mejor la arquitectura de JMF en la página de Java muestran esta imagen, que es muy ilustrativa y ayuda a comprender mejor esta API.
  14. 14. La videocámara y el casete de video que se muestran en esta imagen, como fuente de multimedia bien podría ser un archivo mpg y los dispositivos de salida que en la imagen son una televisión y unas bocinas que serian la applet en el cual se van a presentar los contenidos multimedia. Lo único que haría falta entonces seria el reproductor. La manera mas sencilla de poner un reproductor en la applet es utilizando el MediaPlayer Bean. Instanciamos un Media Player, asi: MediaPlayer player = new javax.media.bean.playerbean.MediaPlayer(): Para decirle al player que archivo queremos reproducir se utiliza la siguiente linea: player.setMediaLocation (dirección del archivo); Para iniciar, detener o pausar la reproducción, se usan las siguientes líneas respectivamente: player.start(); player.close(); player.stop();
  15. 15.  Java 3D Según la pagina web: http://www.programacion.com/articulo/java_3d_169 visitada el 29/06/2013 nos dice: El API 3D de Java es un árbol de clases Java que sirven como interface para sistemas de renderizado de gráficos tridimensionales y un sistema de sonido. El programador trabaja con constructores de alto nivel para crear y manipular objetos geométricos en 3D. Estos objetos geométricos residen en un universo virtual, que luego es renderizado. El API está diseñado con flexibilidad para crear universos virtuales precisos de una amplia variedad de tamaños, desde astronómicos a subatómicos. A pesar de toda esta funcionalidad, el API es sencillo de usar. Los detalles de renderizado se manejan automáticamente. Aprovechándose de los Threads Java, el renderizador Java 3D es capaz de renderizar en paralelo. El renderizador también puede optimizarse automáticamente para mejorar el rendimiento del renderizado. Un programa Java 3D crea ejemplares de objetos Java 3D y los sitúa en un estructura de datos de escenario gráfico. Este escenario gráfico es una composición de objetos 3D en una estructura de árbol que especifica completamente el contenido de un universo virtual, y cómo va a ser renderizado. Los programas Java 3D pueden escribirse para ser ejecutados como aplicaciones solitarias o como applets en navegadores que hayan sido extendidos para soportar Java 3D, o ambos.  Java Beans Según la pagina web: http://www.slideshare.net/BorisSalleg/java-beans-en-jsp visitada el 29/06/2013 nos dice: Los JavaBeans son un modelo de componentes creado por Sun Microsystems para la construcción de aplicaciones en Java. Se usan para encapsular varios objetos en un único objeto (Bean en inglés), para hacer uso de un solo objeto en lugar de varios más simples.
  16. 16. Para funcionar como una clase JavaBean, una clase debe obedecer ciertas convenciones sobre nomenclatura de métodos, construcción y comportamiento. Estas convenciones permiten tener herramientas que puedan utilizar, reutilizar, sustituir y conectar JavaBeans.  Las convenciones requeridas son: o Debe tener un constructor sin argumentos. o Sus propiedades deben ser accesibles mediante métodos get y set que siguen una convención de nomenclatura estándar. o Debe ser serializable.  Dentro de un JavaBean podemos distinguir tres partes: o Propiedades: Los atributos que contiene. o Métodos: Se establecen los métodos get y set para acceder y modificar los atributos. o Eventos: Permiten comunicar con otros JavaBeans.  RMI y JAVA IDL Según la pagina web: http://es.scribd.com/doc/51830722/206/RMI-Y-JAVA-IDL visitada el 29/06/2013 nos dice: Tanto RMI (remote method invocation) como JAVA IDL (java interface definition language) son herramientas para desarrollar aplicaciones distribuidas. Estas aplicaciones presentan la característica, de que una aplicación puede ejecutar funciones y métodos en varios ordenadores distintos. Utilizando una referencia a un objeto que se encuentra en un ordenador remoto, es posible ejecutar métodos de ese objeto desde una aplicación que se ejecuta en un ordenador distinto. RMI y JAVA IDL proporcionan los mecanismos mediante los cuales los distintos objetos distribuidos se comunican y se transmiten la información. Son por lo tanto tecnologías que permiten la creación y uso de objetos distribuidos, esto es, objetos o programas que interactúan en diferentes plataformas y ordenadores a través de una red. RMI es una solución basada íntegramente en java. Incorpora métodos para localizar los objetos remotos, comunicarse con ellos e incluso enviar un objeto de java, "por valor", de un objeto distribuido a otro.java IDL permite la conectividad entre objetos distribuidos
  17. 17. utilizando corba (common object request broker architecture). Corba es un estándar para la interconexión entre objetos distribuidos. Existen implementaciones de corba en varios lenguajes, lo que posibilita comunicar objetos realizados en distintos lenguajes como Java, C/C++, Cobol, tanto RMI como Java IDL están incluidos en el JDK 1.2 de sun. En el caso de Java IDL se precisa de una utilidad adicional (llamada IDLTOJava) que genera el código necesario para comunicarse con cualquier implementación corba.  Java Native Interface (JNI) Según la pagina web: http://homepage.cs.uiowa.edu/~slonnegr/wpj/JNI.pdf visitada el 29/06/2013 nos dice: El JNI se usa para escribir métodos nativos que permitan solventar situaciones en las que una aplicación no puede ser enteramente escrita en Java, como por ejemplo en el caso de que la biblioteca estándar de clases no proporcione soporte para funcionalidades dependientes de la plataforma. También se usa para modificar programas existentes escritos en algún otro lenguaje, permitiéndoles ser accesibles desde aplicaciones Java. Muchas de las clases de la API estándar de Java dependen del JNI para proporcionar funcionalidad al desarrollador y al usuario, por ejemplo las funcionalidades de sonido o lectura/escritura de ficheros. El desarrollador debe asegurarse que la API estándar de Java no proporciona una determinada funcionalidad antes de recurrir al JNI, ya que la primera ofrece una implementación segura e independiente de la plataforma. El framework JNI permite a un método nativo utilizar los objetos Java de la misma forma en que el propio código de Java lo hace. Un método nativo puede crear objetos Java; examinarlos y utilizarlos para que lleven a cabo su función. Un método nativo puede asimismo examinar y utilizar objetos que han sido creados por código de aplicación escrito en Java.
  18. 18. Conclusión El lenguaje de programación Java, permite el desarrollo de aplicaciones bajo el esquema de Cliente Servidor, como de aplicaciones distribuidas, lo que lo hace capaz de conectar dos o más computadoras u ordenadores, ejecutando tareas simultáneamente, y de esta forma logra distribuir el trabajo a realizar. Java es un lenguaje interpretado, y esto es lo que permite que los programas Java puedan ser ejecutados en una gran variedad de entornos. Una vez que existe el programa intérprete para un sistema dado, cualquier programa Java puede ejecutarse en esa plataforma. Un applet Java es un programa diseñado para ser transmitido a través de Internet o de una Intranet, desde un servidor web a un cliente, y ser ejecutado en un navegador web compatible con Java. Los applets Java no presentan problemas de seguridad, pues su ejecución se realiza dentro del entorno del navegador. Estos applets no son simples ficheros de imagen, sonido o animación, sino que son verdaderos programas, que pueden reaccionar ante las acciones del usuario y cambiar dinámicamente, no sólo ejecutar repetidamente la misma animación. En resumen cualquier tipo de aplicación se puede realizar con ella. Java permite la modularidad por lo que se pueden hacer rutinas individuales que sean usadas por más de una aplicación. Sin duda alguna uno de los mejores lenguajes de programación en la actualidad y con una gran cantidad de aplicaciones informáticas que pueden ser usadas en distintas ramas de la ciencia y tecnología.
  19. 19. Referencias Electrónicas  http://www.ciberaula.com/articulo/java_io  http://chuwiki.chuidiang.org  http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/archivos/teclado. htm españa 2013  http://es.scribd.com/doc/13562650/130/Lectura-y-Escritura-de-Archivos-II  http://chuwiki.chuidiang.org/index.php?title=Serializaci%C3%B3n_de_obje tos_en_java  http://chuwiki.chuidiang.org/index.php?title=Lectura_http_y_https_desde_java  http://zarza.usal.es/~fgarcia/doc/tuto2/IV_1.htm españa 2013  http://blogdejuls.blogspot.com/2007/04/java-media-framework.html  http://www.programacion.com/articulo/java_3d_169  http://www.slideshare.net/BorisSalleg/java-beans-en-jsp  http://es.scribd.com/doc/51830722/206/RMI-Y-JAVA-IDL  http://homepage.cs.uiowa.edu/~slonnegr/wpj/JNI.pdf

×