Pessoal,
Quando eu faco um deploy no meu codigo, ele me gera essa exception, porem meu codigo roda, mas nao sei como concertar isso, segue a exception
Quem pode me ajudar ?
valew
Pessoal,
Quando eu faco um deploy no meu codigo, ele me gera essa exception, porem meu codigo roda, mas nao sei como concertar isso, segue a exception
Quem pode me ajudar ?
valew
java.io.NotSerializableException
Chute: Talvez sua classe tenha que implementar Serializable.
Valeu? Até… :thumbup:
[s]
Descupe a ignorancia ! mas eu tenho que iimplementar o Serializable, mas em que momento eu faco isso ?? na chamada do meu metodo ??
valew
public class MinhaClasse implements Serializable {
...
}
antiga mensagem do 'Fox McCloud'
Ela (interface Serializable) não só pode ser implementada como nasceu para isso (daí a palavra implements). O que uma interface não pode ser é instanciada (new). Peguemos o exemplo da interface Runnable. Você simplesmente não pode fazer Runnable r = new Runnable(). É preciso criar uma classe que implemente Runnable se você quiser utilizá-la. Existem exceções, no caso da interface ser utilizada como uma classe implícita (um MouseListener, por exemplo), mas isso já está bem à frente dessa nossa conversa. No livro de certificação Java 5 da Cathy Sierra ela dá uma explicação muito interessante: ela diz que uma interface é um "contrato". Quando uma classe implementa uma interface ela está assinando um contrato, se comprometendo a implementar os métodos definidos na interface. A interface define o método, inclusive com argumentos, mas não diz nada sobre a sua implementação (na interface a declaração termina com ponto-vírgula, e não abre uma chave para iniciar a colocação de linhas de código). Detalhes interessantes: todo método de uma interface é implicitamente public abstract, colocando-se ou não esses modificadores, e toda variável de uma interface (porque a interface também pode ter variáveis) é implicitamente public static final, colocando-se ou não esses modificadores. Segue exemplo:public interface Atualizavel{
void atualiza();
}
public class Jogo implements Atualizavel{
public void atualiza(){
// linhas de código
}
}
Se a classe Jogo implementar a interface Atualizavel, a não-implementação dos métodos da interface (no caso atualiza()) gerará um erro de compilação.
Saca esse exemplo do Thingol
import java.io.*;
class Client implements Serializable {
private String name;
private String address;
public String getName() { return name; }
public String getAddress() { return address; }
public void setName(String name) { this.name = name; }
public void setAddress(String address) { this.address = address; }
public String toString() { return "name='" + name + "' and address= " + address + "'"; }
}
public class Test17 {
public static void main(String[] args) throws Exception {
ObjectOutputStream oos = new ObjectOutputStream (new FileOutputStream ("test.bin"));
Client myClient = new Client();
myClient.setName("Steve Jobs");
myClient.setAddress("1 Infinite Loop; Cupertino, CA 95014");
oos.writeObject (myClient);
oos.close();
ObjectInputStream ois = new ObjectInputStream (new FileInputStream ("test.bin"));
Client yourClient = (Client) ois.readObject();
System.out.println (yourClient);
}
}
Achei pelo cache do Google nesse forum ;-)