PAQUETES - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

PAQUETES

Description:

double readDouble() : lee 8 bytes y retorna el valor de un double. ... void writeDouble(double v) : escribe un valor double, el cual est compuesto de ... – PowerPoint PPT presentation

Number of Views:45
Avg rating:3.0/5.0
Slides: 35
Provided by: xxx319
Category:
Tags: paquetes | dbl

less

Transcript and Presenter's Notes

Title: PAQUETES


1
PAQUETES
Un paquete es un conjunto de clases, interfaces y
subpaquetes relacionados. El paquete define un
ámbito de visibilidad los miembros que no tienen
declaración explícita de ámbito (public,
private,etc.)
2
PAQUETES
Para declarar un paquete package
ltnombregt Una declaración de package debe
aparecer en primer lugar en el archivo fuente,
antes de cualquier declaración de clase o
interface y sólo puede haber una por archivo
fuente.
3
PAQUETES
El nombre de cada tipo dentro de un paquete tiene
implícitamente prefijado el nombre del
paquete. El código definido fuera del paquete que
necesita cosas definidas en el paquete, debe
importar todo el paquete con una sentencia
import, o cualificar el nombre de los tipos que
necesita anteponiéndole el nombre del paquete. La
sentencia import va detrás de cualquier linea de
package pero delante de todo lo demás.
4
PAQUETES
Todo lo que está definido dentro de un paquete
está disponible para ese paquete. Las clases e
interfaces de un paquete tienen dos
accesos public una clase o interface public es
accesible a código fuera de ese paquete. Las
clases que no son public son accesibles para el
código del paquete en que se están
definiendo. Los miembros de una clase que no son
declarados como private, protected ni public,
están disponible sólo para código del paquete, es
decir tienen ámbito de paquete.
5
PAQUETES
Los paquetes deben diseñarse de forma que
contengan clases relacionadas funcionalmente. Los
paquetes se pueden anidar. java.lang Los
identificadores del paquete java no son
accesibles para el código del paquete lang.
6
EL PAQUETE DE E/S
  • La E/S (entrada/salida) de Java se define en
    términos de flujos (streams).
  • Los flujos son secuencias ordenadas de datos que
    tienen una fuente (flujos de entrada) o un
    destino (flujos de salida).
  • El paquete java.io, es el que contiene todos las
    clases que representan estos flujos.

7
EL PAQUETE DE E/S
  • La clase de excepción IOException la utilizan la
    mayoría de los métodos de las clases de este
    paquete, sin perjuicio de que se utilicen
    excepciones más específicas.
  • Cada vez que desea realizar alguna operación de
    E/S, debo importar el paquete con import java.io.
  • Este paquete contiene algunas clases abstractas,
    interfaces y clases concretas.

8
EL PAQUETE DE E/S
A partir de las clases abstractas y las
interfaces, la mayor parte de los flujos soportan
los métodos de esas clases básicas con pocas o
nulas adiciones. Los distintos tipos de flujos
están generalmente apareados, donde existe un
FileInputStream, suele haber un FileOutputStream.
9
EL PAQUETE DE E/S
Input
Output Objetos manip. Abstractas
Input Stream Output Stream
bytes Interfaces Data Input Data
Output. tipos fundam ObjectInput
ObjectOutput objetos Concretas Data
Input Stream Data Output Stream tipos
fundam FileInputStream
FileOutputStream bytes
ObjectInputStream ObjectOutputStream
objetos
10
EL PAQUETE DE E/S
Implementa Extiende
Manipula Data Stream DataInput/output
Stream tipos fun. FileStream
-------- Stream
bytes ObjectStream ObjectInput
--------- Objects
ObjectOutput
significa input o output según corresponda
11
InputStream
Es una clase abstracta que define el modelo de
java para el flujo de entrada Los métodos leen y
escriben bytes desde un origen. Constructor
InputStream( )
12
InputStream
  • Algunos métodos
  • public void close ( ) throws IOException Cierra
    el flujo de entrada. Este método debe invocarse
    para liberar recursos asociados con el flujo.
  • public abstrac int read ( ) throws IOException
    lee un solo byte de datos desde el origen y
    retorna la representación entera de ese byte.

13
InputStream
  • public int read (byte buf) throws IOException
    lee hasta que hay entrada disponible o hasta
    buf.length y llena buf con los bytes leídos.
    Devuelve la cantidad de bytes leídos o -1 si se
    alcanzó el final del flujo.
  • public int read (byte buf, int off, int len)
    throws IOException lee hasta que hay entrada
    disponible y llena el array buf partiendo de un
    desplazamiento off (se desplaza off elementos del
    arreglo) y comienza a llenar buf con len bytes o
    hasta que se alcanza el final del array.

14
OutputStream
Es similar a InputStream, pero proporciona una
abstracción para hacer fluir bytes hacia un
destino. Todos los métodos de esta clase
devuelven un valor void y lanzan una IOException
en caso de error. Constructor public
OutputStream( )
15
OutputStream
Algunos métodos public void close ( ) throws
IOException cierra el flujo de salida. Los
intentos posteriores de escritura lanzarán una
IOException. public void write (byte b)
throws IOException escribe b.length bytes desde
el array b en su stream de salida .
16
OutputStream
public void write (byte b, int off, int len)
throws IOException escribe len bytes desde el
array b, comenzando con el deplazamiento de off ,
en su stream de salida. public abstrac void write
(int b) throws IOException escribe b como
byte public void flush ( ) throws IOException
vacía el flujo, de forma que los bytes contenidos
en un buffer sean expulsados del flujo.
17
Tipos de flujos estándar
El paquete java.io define distintos tipos de
flujos. Los más usuales son FileInputStream File
OutputStream
Obtienen o escriben bytes a un archivo
18
Tipos de flujos estándar
Estas interfaces definen métodos para transmitir
tipos primitivos Java dentro de un flujo.
DataInput DataOutput
Proporcionan una implementación por defecto de
los métodos de las interfaces.
DataInputStream DataOutputStream
19
Tipos de flujos estándar
ObjectInput ObjectOutput
Extienden de DataInput y DataOutput para la
lectura y escritura de objetos. No lo soportan la
versión de Java instalada en el laboratorio. Es
soportado a partir de la versión 1.2.
20
Flujos Data
Las interfaces DataInput y DataOutput definen
métodos para transmitir tipos primitivos Java
dentro de un flujo. Las clases DataInputStream y
DataOutputStream proporcionan una implementación
por defecto para cada interfaz.
21
Interface DataInput
Los métodos de lectura mas usuales son boolean
readBoolean() lee un byte de entrada y retorna
true si el byte no es cero, en caso contrario
retorna false. byte readByte() lee y retorna un
byte de entrada. char readChar() lee y retorna
el valor del char. double readDouble() lee 8
bytes y retorna el valor de un double. float
readFloat() lee cuatro bytes y retorna el valor
de un float.
22
Interface DataInput
void readFully(byte b) lee algunos bytes
desde un stream de entrada y los almacena en el
array b. void readFully(byte b, int off, int
len) lee len bytes desde un flujo de
entrada. int readInt() lee cuatro bytes y
retorna un valor int. String readLine() lee la
próxima línea de texto desde la entrada. long
readLong() lee ocho bytes y retorna un valor
long. short readShort() lee dos bytes y retorna
un short.
23
Interface DataOutput
Los métodos de escritura mas usuales son void
write(byte b) escribe en un flujo de salida
todos los bytes del array b. void write (byte
b, int off, int len) escribe len bytes desde el
array b con un desplazamiento de off, en el flujo
de salida. void write (int b) escribe en el
flujo de salida los ocho bits de menor orden del
argumento b. void writeBoolean (boolean b)
escribe un valor booleano en el flujo de salida.
24
Interface DataOutput
void writeByte(int v) escribe en el flujo de
salida los ocho bits de orden más bajo del
argumento v. void writeBytes(String s) escribe
un String en el flujo de salida. void
writeChar() escribe un valor char, el cual está
compuesto de dos bytes, en el flujo de
salida. void writeChars(String s) escribe cada
carácter del String, en el flujo de salida, en
orden, dos bytes por carácter.
25
Interface DataOutput
void writeDouble(double v) escribe un valor
double, el cual está compuesto de ocho bytes, en
el flujo de salida. void writeFloat(float v)
escribe un valor float, el cual está compuesto de
cuatro bytes, en el flujo de salida. void
writeInt(int v) escribe un valor int, el cual
está compuesto de cuatro bytes, en el flujo de
salida. void writeLong(long v) escribe un valor
long, el cual está compuesto de cuatro bytes, en
el flujo de salida. void writeShort(int v)
escribe dos bytes en el flujo de salida para
representar el valor del argumento.
26
La interface ObjectInput
La interface ObjectInput extiende de DataInput,
para incluir la lectura de objetos. Object
readObject() lee y retorna el objeto leído
27
La interface ObjectOutput
La interface ObjectOutput extiende de DataOutput,
para incluir la escritura de objetos. void
writeObject( Object obj) escribe el objeto obj
en el flujo de salida.
28
Entrada/salida por teclado
  • Se debe leer una cadena y hacer la conversión
    explícita en el programa.
  • Se utilizan las clases envolturas.

29
Clases envolturas
  • Son clases creadas para representar los tipos de
    datos primitivos.
  • Boolean Character
  • Integer Long
  • Float Double

30
Integer
  • public static int parseInt( String s)
  • public static Integer valueOf (String s)
  • public static int intValue ( )

31
Double
  • public static Double valueOf (String s)
  • public static double doubleValue ( )

32
Float
  • public static Float valueOf (String s)
  • public static float floatValue ( )

33
Long
  • public static Long valueOf (String s)
  • public static long longValue ( )

34
Excepciones de entrada/salida mas usuales
FileNotFoundException indica que la apertura de
un archivo ha fracasado InterruptedIOExeception
indica que una operación de E/S se
interrumpió. IOException indica que un error de
E/S de alguna clase ocurrió.
Write a Comment
User Comments (0)
About PowerShow.com