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