Singleton类就是单例类,就是只能被实例化一次的类。
需要注意的是,对于单例类变成可序列化,仅仅在声明上加上“implements Serializable” 是不够的,还要将所有的实例域(非static的域)
声明为transient(瞬时)的,并提供一个readResolve方法。否则,我们反序列化一个单例类的实例时,都会创建一个这个单例类的新的实例,这样就与单例类的本质不符合了。
从JDK1.5开始,我们还可以考虑使用枚举来定义单例类。