HashSet的一种奇怪用法

长安俞白眉 发布于 2013/06/26 11:08
阅读 228
收藏 1

请问new出来的这个对象与HashSet是什么关系,为什么。

new HashSet<String>() {
			private static final long serialVersionUID = 1L;
			{
				add("");
			}
		};

HashSet的子类对象?内部类对象?HashSet对象?

加载中
1
晕dows
晕dows

这种写法是不好的,这个匿名子类定义了serialVersionUID为1,使得这个类实例化的对象无法正常的序列化和反序列化,我指的是序列化后交给其他的模块或者代码去反序列化时,对方会用HashSet的serialVersionUID来反序列化它,其结果自然是出错

当然,如果只是内部自已用一下也没太大关系

0
王瑞平
王瑞平
new出来的肯定是一个实例
0
长安俞白眉
长安俞白眉
我认为是他的匿名子类。
0
易阳华
易阳华
好像记得是初始化的一种方式,Map也有类似的
返回顶部
顶部