我的2007

态度决定高度,努力造就实力!

用户操作
[即时聊天] [发私信] [加为好友]
wuzhijieID:zhijie435
46968次访问,排名2360好友0人,关注者0
zhijie435的文章
原创 89 篇
翻译 0 篇
转载 123 篇
评论 7 篇
最近评论
Cheng Chi:Agree!!根据我的一些测试经验,给兄弟加点料:
在以前跟同事讨论中也谈到这个话题,不过我的题目是“How to Keep Performance test simple, and Why?”
模拟真实环境的测试是需要的,但不是必须的,最好在项目接近结束时,进行一次全面的测试,并且进行压力测试以及长时间稳定性测试。
在相对简单甚至简陋的环境中进行性能测试,可以……
fg:高压带电显示装置
LED显示屏
磁钢
磁性……
elixirzhang:请问jdbc能实现compass增量么
masterkey:不错
dongwei:返回结果怎么才能用ec:分页?求助
文章分类
收藏
    相册
    我和儿子-悠悠的照片
    java技术
    SpringSide江南白衣
    web项目经理手册
    一个大学同学的blog
    一个年轻有为但略有缺点的老板同事
    一位老领导的个人网站
    不知何人,有些文章很经典
    低头赶路,抬头看天:现在公司老总的博客
    我的java老师的blog
    此人很“牛”
    老师换地方了
    职业生涯顾问Leo的专栏
    道理事,德处人;人脉和,事脉顺-专门讨论业务建模问题(还没来得及细看)
    项目管理(其他篇)
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky

    转载 单例模式最佳实践收藏

    新一篇: 设计模式之Proxy(代理) | 旧一篇: java代码审查常见错误整理

    1、饿汉式、懒汉式和登记式单例
          在google上搜索eager singleton或lazy singleton,最前面的几条纪录居然都是中文网页(难道中国人特别关注设计模式?)。这是三种初始化 singleton的方式,饿汉式在类被加载时就被实例化。懒汉式类加载时,不被实例化,在第一次引用时实例化。 由于饿汉式、懒汉式都不能被继承,扩展的登记式singleton可以被继承。
          注意到lazy initialization形式中的synchronized,这个synchronized很重要,如果没有synchronized,那么使用getInstance()是有可能得到多个Singleton实例。

    a. 饿汉式singleton
    public class EagerSingleton
    {
    private static final EagerSingleton m_instance = new Eagersingleton();
    private Eagersingleton(){} //由于构造函数是私有的,因此,此类不能被继承。

    public static EagerSingleton getInstance()
    {
    return m_instance;
    }

    }

    b. 懒汉式singleton
    public class LazySingleton
    {
    private static LazySingleton m_instance = null;
    private LazySingleton(){};
    synchronized public static LazySingleton getInstance()
    {
    if( m_instance == null )
    {
    m_instance = new LazySingleton();
    }
    return m_instance;
    }
    }

    c. 登记式singleton
    import java.util.HashMap;
    public class RegSingleton
    {
    static private HashMap m_registry = new HashMap();
    static
    {
    RegSingleton x = new regSingleton();
    m_registry.put(x.getClass().getName(), x);
    }
    protect RegSingleton(){}
    static public RegSingleton getInstance(String name)
    {
    if(name == null )
    {
    name = "RegSingleton";
    }
    if(m_registry.get(name ) == null )
    {
    m_registry.put(name, Class.forName(name).newInstance();
    }
    catch(Exception e)
    {
    System.out.println("Error happened.");
    }
    return (RegSingleton)(m_registry.get(name));
    }
    }
     

    发表于 @ 2006年12月28日 19:48:00|评论(loading...)|编辑

    新一篇: 设计模式之Proxy(代理) | 旧一篇: java代码审查常见错误整理

    评论:没有评论。

    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © zhijie435