Boa estive a tentar implementar mas não sei o que poder numa parte do código para guardar a informação em ficheros binarios a partir da serialização
[code=java]
package trabalho_intercalar;
import java.io.IOException;
import java.util.Scanner;
import java.util.*;
import java.util.ArrayList;
import java.io.Serializable;
//Superclass Pessoa
public class Biblioteca {
/*
interface DVD{
void NumeroEdicao();
}
interface CD{
void NumeroEdicao();
}
interface Software{
void NumeroEdicao();
}
interface Livro{
void NumeroEdicao();
}
*/
public static class Pessoa{
//class
private String Primeiro_nome,Apelido , Morada, Cidade, Distrito,Email;
private int Numero,Codigo_postal,Telefone,Telemovel;
<pre><code> //heranças
Pessoa(String Primeiro_nome,String Apelido, String Morada, String Cidade,String Distrito,String Email,int Numero,int Codigo_postal,int Telefone,int Telemovel){
this.Primeiro_nome=Primeiro_nome;
this.Apelido=Apelido;
this.Morada=Morada;
this.Cidade=Cidade;
this.Distrito=Distrito;
this.Email=Email;
this.Numero = Numero;
this.Codigo_postal = Codigo_postal;
this.Telefone=Telefone;
this.Telemovel=Telemovel;
}
//gets e sets
public String getApelido(){return Apelido;}
public void setApelido(String a){Apelido=a;}
public String getPrimeiro_nome(){return Primeiro_nome;}
public void setPrimeiro_nome(String pn){Primeiro_nome=pn;}
public String getMorada(){return Morada;}
public void setMorada(String m){Morada=m;}
public String getCidade(){return Cidade;}
public void setCidade(String c){Cidade=c;}
public String getDistrito(){return Distrito;}
public void setDistrito(String d){Distrito=d;}
public String getEmail(){return Email;}
public void setEmail(String e){Email=e;}
public int getNumero(){return Numero;}
public void setNumero(int n){Numero=n;}
public int getCodigo_postal(){return Codigo_postal;}
public void setCodigo_postal(int cp){Codigo_postal=cp;}
public int getTelefone(){return Telefone;}
public void setTelefone(int t){Telefone=t;}
public int getTelemovel(){return Telemovel;}
public void setTelemovel(int tm){Telemovel=tm;}
public String toString()
{
String Mensagem =
"Telemovel: " + Telemovel + "\n" +
"Telefone: " + Telefone + "\n";
return Mensagem;
}
Pessoa()
{
super(); // Construtor
}
}
//Classe Funcionario
public String getDepartamento(){return Departamento;}
public void setDepartamento(String d){Departamento=d;}
public int getN_empresa(){return n_empresa;}
public void setN_empresa(int n_emp){n_empresa=n_emp;}
public Funcionario(){
super();
this.Departamento = Departamento;
this.n_empresa = n_empresa;
}
}
//Classe Cliente
public static class Cliente extends Pessoa{
private int Numero_de_identificacao;
public int getNumero_de_identificacao(){return Numero_de_identificacao;}
public void setNumero_de_identificacao (int n_identi){Numero_de_identificacao=n_identi;}
public Cliente(){
super();
this.Numero_de_identificacao = Numero_de_identificacao;
}
}
public int getNumero_recurso() {return Numero_do_livro;}
public void setNumero_recurso(int num_livro) {Numero_do_livro=num_livro;}
public String getNome() {return Nome_livro;}
public void setNome(String no_livro) {Nome_livro=no_livro;}
public int getEdicao() {return Edicao;}
public void setEdicao(int e) {Edicao=e;}
public String getEditora() {return Editora;}
public void setEditora(String ed) {Editora=ed;}
public String getAutor() {return Autor;}
public void setAutor(String a) {Autor=a;}
public String getDisponibilidade() {return Disponibilidade;}
public void setDisponibilidade(String d) {Disponibilidade=d;}
public Recursos( ){
super();
this.Numero_do_livro = Numero_do_livro;
this.Editora = Editora;
this.Autor = Autor;
this.Disponibilidade = Disponibilidade;
this.Edicao = Edicao;
}
}
no código principal
package trabalho_intercalar;
import java.util.*;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import trabalho_intercalar.Biblioteca.Pessoa;
import trabalho_intercalar.Biblioteca.Funcionario;
import trabalho_intercalar.Biblioteca.Cliente;
import trabalho_intercalar.Biblioteca.Recursos;
public class Main{
static ArrayList<Funcionario> arrayf = new ArrayList<Funcionario>();
static Funcionario func;
static ArrayList<Cliente> arrayc = new ArrayList<Cliente>();
static Cliente client;
static ArrayList<Recursos> arrayr = new ArrayList<Recursos>();
static Recursos rec;
static Pessoa pes1 = new Pessoa();
static Pessoa pes2 = new Pessoa();
//funcionario
public static void criarNovoFunc()
{
func = new Funcionario();
String nomeFicheiro= "ArrayListFuncionarios.dat";
Scanner sc = new Scanner(System.in);
System.out.println("Introduza o primeiro Nome: ");
String primeiro_nome = sc.nextLine();
func.setPrimeiro_nome(primeiro_nome);
System.out.println("Introduza o Apelido: ");
String Apelido = sc.nextLine();
func.setApelido(Apelido);
System.out.println("Introduza o Departamento: ");
String Departamento = sc.nextLine();
func.setDepartamento(Departamento);
System.out.println("Introduza o Numero de identificação: ");
int n_empresa = sc.nextInt();
func.setN_empresa(n_empresa);
arrayf.add(func);
System.out.println ("Foi adicionado um Funcionario ");
System.out.println ("===========================================");
}
static public void listarFuncionarios()
{
String nomeFicheiro= "ArrayListFuncionarios.dat";
for(int a=0; a< arrayf.size();a++){
System.out.println(arrayf.get(a).getPrimeiro_nome());
System.out.println(arrayf.get(a).getApelido());
System.out.println(arrayf.get(a).getDepartamento());
System.out.println(arrayf.get(a).getN_empresa());
//System.out.println("Total Funcionarios "+ arrayf.size());
// Iterator<Funcionario> itr = arrayf.iterator();
//while (itr.hasNext()) {
//Funcionario element = itr.next();
//System.out.print(element + " ");
}
}
private void writeObject(ObjectOutputStream out) throws IOException {
out.writeObject(func.setPrimeiro_nome(null));
}
Não sei que variavel introduzir no
out.writeObject(func.setPrimeiro_nome(null));??