没有什么好处不好处...
当你的对象比较“重”时,你可以考虑Singleton
一般单例的坏处比较多...
不公开构造方法使单例类难以出现在继承结构中...
我一般只在XXXFactory中,也就是多层结构的最
上层使用单例模式,公开给client一个统一的
接口...

解决方案 »

  1.   

    使用单例,
    1. 首先避免了过多的使用 static (其实单例完全可以用 static 的东西来代替)
    2. 自始至终都只有一个对象,不对造成过多创建/删除对象的开销
      

  2.   

    当然是使用原先的对象了,比如/*
     * @(#) Test.java
     * Created on 2004-9-21
     * Created by James Fancy
     */
    package jamesfancy;
    /**
     * @author James Fancy
     */
    public final class Test {
        
        private static Test defaultInstance;
        
        private Test() {
            // 避免用 new 创建对象
        }
        
        public static Test getInstance() {
            if (defaultInstance == null) {
                defaultInstance = new Test();
            }
            return defaultInstance;
        }}
      

  3.   

    楼上单例并不能保证获得单个实例....
    还是老实写最可靠的创建方式吧....public final class Test {
        
        private static Test defaultInstance  = new Test();
        
        private Test() {
            // 避免用 new 创建对象
        }
        
        public static Test getInstance() {
            return defaultInstance;
        }}