如果java的某个类需要序列化并implements Serializable,这个类的属性类还需要Serializable吗?
classMyClassimplementsSerializable{privateAttrClassattr;}//AttrClass是属性类classAttrClas...
class MyClass implements Serializable
{private AttrClass attr;}//AttrClass是属性类
class AttrClass /*这里必须implements Serializable吗?*/
{……} 展开
{private AttrClass attr;}//AttrClass是属性类
class AttrClass /*这里必须implements Serializable吗?*/
{……} 展开
1个回答
展开全部
不需要,只要引用Serializable接口就可以了,序列化工作由java自动完成.
如果想了解原理可以搜索下Serializable原理.
如果想了解原理可以搜索下Serializable原理.
追问
MyClass中有AttrClass的实例attrClass作为属性。
如果MyClass implements Serializable,需要把AttrClass也声明为implements Serializable吗?
(我知道只需声明implements Serializable接口,不用写任何实现细节)
追答
不好意思,没仔细看题目.
如果对象中存在其他对象的引用,则被引用的对象的类也要支持串行化.复杂类的串行化是通过递归来完成的.
因此如你题目中所说,AttrClass也要实现Serializable接口.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询