Java classCounter变量将发生什么变化?
若我序列化这个对象,然后再次反序列化并获取对象,Java classCounter变量将发生什么变化?,java,serialization,Java,Serialization,若我序列化这个对象,然后再次反序列化并获取对象,classCounter的值是多少 我创建了5个对象classCounter=5我将在新对象中得到什么 Public Counter implements serializable { private static classCounter = 0; Counter (){ classCounter ++; } } 这根本不会影响柜台。如果您使用不同的类加载器将序列化数据传输到jvm,可能会出现计数器小于5的情况。反序列化时不会为
classCounter
的值是多少
我创建了5个对象classCounter=5
我将在新对象中得到什么
Public Counter implements serializable {
private static classCounter = 0;
Counter (){
classCounter ++;
}
}
这根本不会影响柜台。如果您使用不同的类加载器将序列化数据传输到jvm,可能会出现计数器小于5的情况。反序列化时不会为可序列化类调用默认构造函数,因此不会调用
classCounter++
。
但是您必须知道,如果超类没有实现可序列化,那么将调用默认构造函数。见解释