static 的应用 单例模式 Singleton

单例:保证一个类在系统中最多只创建一个实例。

好处:由于过多创建对象实例,会产生过多的系统垃圾,需要GC频繁回收,由于GC会占用较大的系统资源,所有建议减少对象的创建,引出单例模式。能够明显地提供系统性能。

实现单例模式的步骤:

1) 构造方法私有(不允许外界直接new对象)

2) 提供公共静态方法获取单例(通过类名直接调用:类名.静态方法)

3) 提供一个私有静态的成员来保存单例

 

案例:“懒汉式”VS“饿汉式”实现单例模式,推荐使用后者

在day09.sta包下 创建TestSingleton1.java

在day09.sta包下 创建TestSingleton2.java

class LaoPo{

    private static LaoPo lp = new LaoPo();

    private LaoPo(){

    }

    public static LaoPo getInstance(){

        return lp;

    }

}

main:

  LaoPo lp1 = new LaoPo();

  LaoPo lp2 = new LaoPo();

  System.out.println(lp1 == lp2);  //true

 

结论:针对测试方面,必要时模拟出多个用户(多线程)同时并发访问程序,才能测试出问题。

posted on 2016-11-07 17:21  Amy-Lee  阅读(168)  评论(0编辑  收藏  举报