您可以将Java集合编程到接口并使用Serializable吗?

Jam*_*hon 4 java collections serialization interface javabeans

我已经完成了将所有域级逻辑编程到接口.现在我发现当我想将数据放入bean时,bean不起作用,因为Collection接口(Collection,List,Set等)不实现Serializable.

我是否需要重构我的所有代码才能使用具体类型,或者这里有更好的行动方案吗?

Ste*_*Kuo 5

如果您的类实现Serializable并且其所有成员都是可序列化的,则可以正确地序列化该对象.例:

public class Person implements Serializable {
    private String name;
    private Collection<Integer> luckyNumbers = new ArrayList<Integer>();
}
Run Code Online (Sandbox Code Playgroud)

只要luckyNumbers实例是可序列化的(例如ArrayList),并且其成员是可序列化的(在本例中为Integers),那么该对象将序列化.