Objetos y clases: uso de clases de librerías

31
Objetos y clases: Objetos y clases: uso de clases de uso de clases de librerías librerías

description

Objetos y clases: uso de clases de librerías. Clases de librería. El desarrollo de muchas aplicaciones es más sencillo si se crean y usan objetos de las clases adecuadas Hay una enorme cantidad de clases de objetos ya inventadas Muchas están disponibles en la configuración habitual de java - PowerPoint PPT Presentation

Transcript of Objetos y clases: uso de clases de librerías

Page 1: Objetos y clases: uso de clases de librerías

Objetos y clases:Objetos y clases:uso de clases de libreríasuso de clases de librerías

Page 2: Objetos y clases: uso de clases de librerías

Clases de libreríaClases de librería

El desarrollo de muchas aplicaciones es más sencillo si se crean y usan objetos de las clases adecuadas

Hay una enorme cantidad de clases de Hay una enorme cantidad de clases de objetos ya inventadasobjetos ya inventadas– Muchas están disponibles en la configuración Muchas están disponibles en la configuración

habitual de habitual de javajavaSon clases de librerías que tiene instaladas Eclipse

Page 3: Objetos y clases: uso de clases de librerías

Para crear ventanas…Para crear ventanas…

Los objetos de la clase Los objetos de la clase JFrameJFrame sirven sirven para dibujar ventanas en la pantallapara dibujar ventanas en la pantalla– Básicamente, sólo hay que hacer dos cosasBásicamente, sólo hay que hacer dos cosas

JFrame uno = new JFrame();

uno.show();

Crear un objeto y asignárselo a una variable

Hacer que el objeto realice la función show

Los objetos de la clase Los objetos de la clase JFrameJFrame sirven sirven para dibujar ventanas en la pantallapara dibujar ventanas en la pantalla– Básicamente, sólo hay que hacer dos cosasBásicamente, sólo hay que hacer dos cosas

JFrame uno = new JFrame();

uno.show();

Crear un objeto y asignárselo a una variable

Hacer que el objeto realice la función show

Page 4: Objetos y clases: uso de clases de librerías

Cosas a tener en cuenta para usar Cosas a tener en cuenta para usar clases de librería…clases de librería…

AbrirUsoSimpleDeVentanas

JFrame no es un nombre de clase válido!

Page 5: Objetos y clases: uso de clases de librerías

¿Por qué no es un nombre de ¿Por qué no es un nombre de clase válido?clase válido?

Para crear un objeto…Para crear un objeto…– Se usa una Se usa una operación constructora::

La palabra new seguida por el nombre de la clase

new JFrame()

– Pero el nombre Pero el nombre completocompleto es: es:

javax.swing.JFrameJFrameJFrame sólo sólo es la forma abreviadaabreviada del nombre

Es preferible usar el nombre abreviado de una clase siempre que sea posible

Page 6: Objetos y clases: uso de clases de librerías

Para usar el nombre abreviadoPara usar el nombre abreviado

Pinchar en la marca de error y elegir el import adecuado

Page 7: Objetos y clases: uso de clases de librerías

Después de corregir…Después de corregir…

Código incrustado por EclipsePermite usar la forma abreviada del nombre

Al ejecutar el programa se verá esa ventana

Page 8: Objetos y clases: uso de clases de librerías

Sobre los objetos JFrame…Sobre los objetos JFrame…

Tienen métodos para cambiar las dimensiones Tienen métodos para cambiar las dimensiones de la ventana, su posición, el título…de la ventana, su posición, el título…– El programa UsoDeVentanas indica cómo se usan El programa UsoDeVentanas indica cómo se usan

algunos de esos métodosalgunos de esos métodos

Más información enhttp://java.sun.com/javase/6/docs/api/

Pero puede no ser una documentación fácil de usar en las primeras etapas

Page 9: Objetos y clases: uso de clases de librerías

Para crear un archivo de texto…Para crear un archivo de texto…

Los objetos de la clase Los objetos de la clase PrintStreamPrintStream sirven para crear archivos de textosirven para crear archivos de texto– Básicamente, sólo hay que hacer dos cosasBásicamente, sólo hay que hacer dos cosas

PrintStream uno = new PrintStream ();

uno.println(“Texto”);

Crear un objeto y asignárselo a una variable

Hacer que el objeto escriba un texto en el archivo

Page 10: Objetos y clases: uso de clases de librerías

Cosas a tener en cuenta para usar Cosas a tener en cuenta para usar java.io.PrintStreamjava.io.PrintStream

AbrirPrintStreamSimpleDemo

Para evitar errores molestos al comienzo,

•Primero, declarar la variable•Después, asignarle el objeto creado

Page 11: Objetos y clases: uso de clases de librerías

¿Cómo se usa¿Cómo se usanew PrintStreamnew PrintStream??

tiene que incluir un argumento StringIndica la ruta del archivo a crear

Page 12: Objetos y clases: uso de clases de librerías

Cosas a tener en cuenta para usar Cosas a tener en cuenta para usar PrintStreamPrintStream

Con algunas clases de librería, hay que usar una instrucción especial…

Page 13: Objetos y clases: uso de clases de librerías

Para usar PrintStreamPara usar PrintStream

Pinchar en la marca de error y elegir surround with

Page 14: Objetos y clases: uso de clases de librerías

Después de corregir…Después de corregir…

A veces, es obligado poner una instrucción dentro de un

try…catch

Al ejecutar el programa se crea un archivo con la ruta indicada:Si no es una ruta absoluta, se crea en la carpeta del proyecto

Page 15: Objetos y clases: uso de clases de librerías

Sobre los objetos PrintStream…Sobre los objetos PrintStream…

Tienen métodos para cambiar escribir en el Tienen métodos para cambiar escribir en el archivo de texto: valores String, int,…archivo de texto: valores String, int,…– El programa PrintStreamDemo indica cómo se usan El programa PrintStreamDemo indica cómo se usan

algunos de esos métodosalgunos de esos métodos

Más información enhttp://java.sun.com/javase/6/docs/api/

Pero puede no ser una documentación fácil de usar en las primeras etapas

Page 16: Objetos y clases: uso de clases de librerías

Para procesar un archivo de Para procesar un archivo de texto…texto…

Los objetos de la clase Los objetos de la clase ScannerScanner sirven sirven para procesar archivos de textopara procesar archivos de texto– Básicamente, sólo hay que hacer estoBásicamente, sólo hay que hacer esto

File file = new File();

String s = uno.next();

Crear un objeto File y asignárselo a una variable

Hacer que el scanner lea una pieza de información de un

archivo

Scanner uno = new Scanner ();Crear un objeto Scanner y asignárselo a una variable

Page 17: Objetos y clases: uso de clases de librerías

Cosas a tener en cuenta para usar Cosas a tener en cuenta para usar java.io.Scannerjava.io.Scanner

AbrirScannerSimpleDemo

Para evitar errores molestos al comienzo,

•Primero, declarar las variables•Después, asignarles los objetos creados

Page 18: Objetos y clases: uso de clases de librerías

¿Cómo se usa¿Cómo se usanew Scannernew Scanner??

tiene que incluir un argumento FileIndica la ruta del archivo a procesar

Page 19: Objetos y clases: uso de clases de librerías

¿Cómo se usa n¿Cómo se usa new Fileew File??

tiene que incluir un argumento Stringla ruta de un archivo

Un objeto File almacena una ruta de archivo

Page 20: Objetos y clases: uso de clases de librerías

Cosas a tener en cuenta para…Cosas a tener en cuenta para…

Con algunas clases de librería, hay que usar una instrucción especial…

Page 21: Objetos y clases: uso de clases de librerías

Para usar ScannerPara usar Scanner

Pinchar en la marca de error y elegir surround with

Page 22: Objetos y clases: uso de clases de librerías

Después de corregir…Después de corregir…

A veces, es obligado poner una instrucción dentro de un

try…catch

Lee la primera palabra del archivo

Page 23: Objetos y clases: uso de clases de librerías

Sobre los objetos Scanner…Sobre los objetos Scanner…

Ven el contenido de un archivo como una sucesión de palabras– Cada vez que ejecutan el método next leen Cada vez que ejecutan el método next leen

una palabrauna palabraLeen las palabras de una en una: primera, segunda…

– Las palabras pueden estar formadas por letras, pero Las palabras pueden estar formadas por letras, pero también por cifras decimales…también por cifras decimales…

Page 24: Objetos y clases: uso de clases de librerías

Sobre los objetos Scanner…Sobre los objetos Scanner…

javaProgramming

1024

File file = null;Scanner scanner = null;File = new File(ruta);Scanner = new Scanner(file);

String a = scanner.next();String b = scanner.next();String c = scanner.next();String d = scanner.next();

a java

b Programming

a 1024Ahí, aborta: no quedan palabras por leer

SI el texto del archivo es…

Las variables serán…

Al ejecutar…

Page 25: Objetos y clases: uso de clases de librerías

Para saber si quedan palabras…Para saber si quedan palabras…

El método hasNext sirve averiguar si El método hasNext sirve averiguar si quedan palabras por leerquedan palabras por leer

boolean chivato = scanner.hasNext();

chivatotrue

false

Si quedan palabras

Si no quedan palabras

Page 26: Objetos y clases: uso de clases de librerías

Para saber si quedan palabras…Para saber si quedan palabras…

javaProgramming

1024

File file = null;Scanner scanner = null;File = new File(ruta);scanner = new Scanner(file);

String a = scanner.next();String b = scanner.next();String c = scanner.next();boolean f = scanner.hasNext();

b Programming

c 1024

f false

SI el texto del archivo es…

Las variables serán…

Al ejecutar…

a java

Page 27: Objetos y clases: uso de clases de librerías

Para leer enteros…Para leer enteros…

El método nextInt sirve leer la siguiente El método nextInt sirve leer la siguiente palabra, palabra, interpretándola como valor interpretándola como valor enteroentero, si es posible, si es posible

int n = scanner.nextInt();

Page 28: Objetos y clases: uso de clases de librerías

Para leer enteros…Para leer enteros…

PX01

10

1024

XP04

256

File file = null;Scanner scanner = null;File = new File(ruta);Scanner = new Scanner(file);

String a = scanner.next();String b = scanner.nextInt();String c = scanner.nextInt();String d = scanner.nextInt();

a PX01

b 10

c 1024Ahí, aborta: la siguiente palabra no es interpretable como valor int

SI el texto del archivo es…

Las variables serán…

Al ejecutar…

Page 29: Objetos y clases: uso de clases de librerías

Para saber si…Para saber si…

El método hasNextInt sirve para averiguar El método hasNextInt sirve para averiguar si la siguiente palabra puede interpretarse si la siguiente palabra puede interpretarse como valor enterocomo valor entero

boolean chivato = scanner.hasNextInt();

chivatotrue

false

Si al siguiente palabra puede interpretarse…

en caso contrario

Page 30: Objetos y clases: uso de clases de librerías

Para procesar un archivo…Para procesar un archivo…

while ( scanner.hasNext( ) ){if ( scanner.hasNextInt( ) ){

int v = scanner.nextInt( ); procesar v } else if ( scanner.hasNextDouble( ) ){ double d = scanner.nextDouble( ); procesar d } else { String p = scanner.next( ); procesar p }}

En cada iteración se procesa una palabra…

Si la palabra a leer representa

un valor int

Si la palabra a leer representa un valor double

En cualquier otro caso..

Page 31: Objetos y clases: uso de clases de librerías

Ejemplos…Ejemplos…

ScannerDemo muestra el uso de algunos de los métodos de un Scanner

ScannerUso muestra el esquema habitual para procesar el contenido de un archivo