我必须序列化Collection并设置接口。对于Java上的这些接口,哪些是最好的可序列化替代品?
发布于 2012-01-20 19:18:07
Set是一个接口。
使用HashSet实现 Set和HashSets 是可序列化的。
只需确保集合中的所有对象都是可序列化的。
有关更多信息,请访问Why java.util.Set is not Serializable?
PS。它不必是HashSet;使用任何可序列化并实现Set或的具体类。
发布于 2012-01-20 19:20:43
类型检查知道set是不可序列化的,但是set的子类型是可序列化的。
Set是一个接口。但是set的实现是HashSet的。这是可序列化的。
您不希望序列化Set,因为Set不能被实例化。
Set st = new Set(); // illegal 因此set实际上不需要实现Serializable。
无论如何,您可以使用LinkedHashSet和TreeSet。这些也是可序列化的。
发布于 2012-01-20 19:21:45
以下是一些常见的问题:
--HashSet:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, Set<E>
--TreeSet:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, NavigableSet<E>,
Set<E>, SortedSet<E>
--ArrayList:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess
--LinkedList:
All Implemented Interfaces:
Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, Queue<E> https://stackoverflow.com/questions/8940573
复制相似问题