实验内容:
1. 某Web 性能测试软件中包含一个虚拟用户生成器(Virtual User Generator)。
为了避免出现生成的虚拟用户数量不一致,该测试软件在工作时只允许启动唯一
一个虚拟用户生成器。采用单例模式设计该虚拟用户生成器,绘制类图并使用饿
汉式单例、双重检测锁和IoDH 三种方式编程模拟实现。
答(类图):
饿汉式单例代码:
import java.util.List;
public class VUGenerator {
private static final VUGenerator instance = new VUGenerator();
private VUGenerator() { }
public static VUGenerator getInstance() {
return instance;
}
public List generateVirtualUsers() {
return null;
}
}
public class Client {
public static void main(String[] args) {
VUGenerator gen1, gen2;
gen1 = VUGenerator.getInstance();
gen2 = VUGenerator.getInstance();
System.out.println(gen1==gen2);
}
}
双重检测锁代码: