1、序列化时并不会序列化static属性、transient属性。因为这两个属性代表类的状态,所以不会被序列化;
2、序列化生成对象的时候,不会调用类的任何构造函数;
使用反射生成类的时候有两种方式
a、Class.newInstance() 只能够调用无参的构造函数,即默认的构造函数;
b、Constructor.newInstance() 可以根据传入的参数,调用任意构造构造函数。
使用反序列化生成的时候
ObjectStreamClass.newInstance() 不会调用构造函数
创建对象的几种方式可参考:
http://www.cnblogs.com/yunger/p/5793632.html