如何避免java中扩展类的序列化

时间:2016-09-07 19:30:17

标签: java

我有两个类A和B.Class B是实现Serializable接口,而A类扩展B.所以如何避免序列化A类。

1 个答案:

答案 0 :(得分:1)

使用合成而不是使用继承。也许还可以为您希望BA个对象的行为创建一个界面。例如:

interface Foo {
    void foo();
}

public class B implements java.io.Serializable, Foo {
    // some instance vars and methods
    public void foo() {
        // b implementation.
    }
}

public class A implements Foo {
    private final B b;
    public A(final B b) {
        this.b = b;
    }
    public void foo() {
        b.foo();
    }
}