Java - Modifique la clase EstanteriaMultimedia.

 
Vista:

Modifique la clase EstanteriaMultimedia.

Publicado por Daniel (1 intervención) el 12/02/2013 17:48:17
Estoy en el tema 2 del curso de java y tengo que hacer un ejercicio:

Modifique la clase EstanteriaMultimedia haga las siguientes acciones:
 Crea un objeto de la clase EscrituraLecturaDeObjetosMultimedia.
 Guarda los objetos creados en el estanteria.dat llamando al método escrituraObjetos de la clase EscrituraLecturaDeObjetosMultimedia.
 Lee los objetos creados en el estanteria.dat llamando al método lecturaObjetos de la clase EscrituraLecturaDeObjetosMultimedia.
 Imprime los objetos recuperados en un ArrayList con la interfaz de soporte Iterator.

Esta es la clase EscrituraLecturaDeObjetosMultimedia:

package Multimedia;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.*;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
public class EscrituraLecturaDeObjetosMultimedia {
//Variables
private Object EscrituraLecturaDeObjetosMultimedia;
private ObjectOutputStream escritura;
private ObjectInputStream lectura;
private FileOutputStream fileOutPutStream;
private FileInputStream fileInPutStream;




//Constructores
public EscrituraLecturaDeObjetosMultimedia(String objeto){
this.EscrituraLecturaDeObjetosMultimedia = objeto ;
}

//Metodos
public void escrituraObjetos(EstanteriaMultimedia estanteriaMultimedia) throws IOException {
fileOutPutStream = new FileOutputStream("estanteria.dat");
escritura = new ObjectOutputStream(fileOutPutStream);

for (int i = 0; i < estanteriaMultimedia.size(); i++) {
escritura.writeObject(estanteriaMultimedia.get(i));
}
escritura.close();

}

public ArrayList lecturaObjetos(int numObjetos)throws Exception,FileNotFoundException,
IOException{
ArrayList listaObjetos = new ArrayList();
FileInputStream fileInputStream = new FileInputStream("estanteria.dat");
lectura = new ObjectInputStream(fileInputStream);
for(int i=0; i<numObjetos;i++){
listaObjetos.add(lectura.readObject());
}
lectura.close();
return listaObjetos;
}
public static void main(String[] args) {
//Variables


//Metodos


}

}

Y esta es la clase EstanteriaMultimedia:

package Multimedia;
public class EstanteriaMultimedia {

//Variables

private EstanteriaMultimedia[]listaMultimedia;
private int contador;


//Constructor
public EstanteriaMultimedia(int tamañoMaximo){
listaMultimedia = new EstanteriaMultimedia[tamañoMaximo];
contador = 0;
}

EstanteriaMultimedia(String algo, String algos, String assa, String algos_s) {
throw new UnsupportedOperationException("Not yet implemented");
}




//Metodos

public int size(){
return contador;
}
public boolean llena(){
return contador == listaMultimedia.length;
}
public boolean add(EstanteriaMultimedia multimedia){
if(llena()){
return false;
}else{
listaMultimedia[contador]=multimedia;
contador++;
return true;
}

}
public EstanteriaMultimedia get(int posicion){
if(posicion < 0 || posicion >= contador)
throw new IndexOutOfBoundsException();
return listaMultimedia[posicion];
}
public int indexOf(EstanteriaMultimedia multimedia){
for (int i=0; i<contador; i++){
if(multimedia.equals(listaMultimedia)){
return i;
}
}
return -1;
}
public String toString(){
String lista = "";
for(int i=0; i<contador; i++){
lista += listaMultimedia.toString()+"\n\n";
}
return lista;
}

}
si me podeis ayudar se me cumple el plazo y no me lo e podido estudiar bn por temas personales Gracias.
Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Saluton

Modifique la clase EstanteriaMultimedia.

Publicado por Saluton (1 intervención) el 26/03/2013 19:16:48
Lo que hay que hacer es implementar la interfaz Iterator en la clase EstanteriaMultimedia, encapsular los métodos de escritura y lectura de objetos también en ella para que todas las operaciones estén centralizadas y, finalmente crear una clase donde probemos nuestro programa y todas sus funcionalidades, clase AnadeObjetosALaEstanteriaMultimedia (creación de objetos de todas las clases hijas de Multimedia, creación de una EstanteríaMultimedia, probar las operaciones de adición y eliminación de elementos de la estructura, la escritura y lectura de los objetos a un archivo,...)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar