`
aaron_ch
  • 浏览: 178132 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Singlton ture or not?

    博客分类:
  • Java
阅读更多

True

public class Singleton {
        private Singleton(){}
        private static Singleton instance = new Singleton();
  public static Singleton getInstance() {
    return instance;   
   }
}

 public class Singleton {
  private static Singleton instance = null;
        public static synchronized Singleton getInstance() {
                if (instance==null)
           instance=new Singleton();
          return instance;   
        }
}

 

Not Singleton

public class Singleton {
        private Singleton(){}
        private static Singleton instance = null;
     public static Singleton getInstance() {
                instance =new Singleton();
    return instance;   
   }
}


分享到:
评论
3 楼 cskysnew 2007-07-04  
第二种如果去掉synchronized,就不是线程安全的,应该就不是Singleton的。
2 楼 liquidthinker 2007-07-04  
daquan198163 写道
第二种去掉synchronized呢?
public class Singleton {
  private static Singleton instance = null;
        public static Singleton getInstance() {
                if (instance==null)
           instance=new Singleton();
          return instance;   
        }
}



去掉同步,在多线程环境中可能产生不唯一的实例,因此也就不叫做Singleton了
1 楼 daquan198163 2007-07-04  
第二种去掉synchronized呢?
public class Singleton {
  private static Singleton instance = null;
        public static Singleton getInstance() {
                if (instance==null)
           instance=new Singleton();
          return instance;   
        }
}

相关推荐

    factory&singlton pattern

    标题中的“factory&singleton pattern”指的是工厂模式和单例模式,这是两种常见的设计模式,在软件工程中被广泛使用,特别是对于对象的创建和管理。设计模式是解决常见问题的成熟方案,它们为软件开发提供了良好的...

    node-singleton-event:由singlton事件发射器类驱动的全局事件总线

    由singlton事件发射器类驱动的全局事件总线。 使用此模块可以将某些东西钩在其他对象中。 安装 npm install node-singleton-event -save 如何使用 在要与另一个文件进行通信的每个文件中都需要它。 说些什么: ...

    UniversalLoadData:通用库帮助您加载数据

    通用加载数据通用库可帮助您加载数据。 做什么的? UniversalLoadData 可以帮助... 调用 UniversalLoader.getDefault() 得到一个 UniversalLoader singlton 对象,然后你可以调用不同的方法,更多细节你可以看源代码。

    Remoting实例

    采用工厂模式及反射机制在服务端创建远程对象,在客户短只需调用Factory.CreateInstance(Type(InterfaceName),object[] args)即可创建远程对象,Factory工厂类采用了WellKnown服务端的SinglTon激活模式,其他的远程...

    DepartureTime:公共交通的实时发车时间应用程序还支持查找最近的路线停靠点

    出发时间 ...使用的数据库:为了简单起见,我模拟了一个 MockDB singlton 类来保存数据。 只有当我们在地图中找不到它时,我们才会通过 API 调用检索该项目。 Architecture(classes): -MockDB: 单

    C++开发在IOS环境下运行的LRUCache缓存功能

    Singlton模板类是用来实现单例模式的,这是一个设计模式,确保一个类只有一个实例,并提供全局访问点。在C++中,通常使用静态成员变量和私有构造函数来实现单例。这段代码中使用了C++ TR1库中的`std::tr1::shared_...

Global site tag (gtag.js) - Google Analytics