1700474691
1700474692
你不可能让两段相同的POJO程序同时出现在同一模块中吧!
1700474693
1700474694
❑性能问题,我们会在扩展模块中讲解。
1700474695
1700474696
说了这么多,我们还是继续来看程序,工厂类如代码清单28-5所示。
1700474697
1700474698
代码清单28-5 带对象池的工厂类
1700474699
1700474700
public class SignInfoFactory{
1700474701
1700474702
//池容器
1700474703
1700474704
private static HashMap<String,SignInfo>pool=new HashMap<String,SignInfo>();
1700474705
1700474706
//报名信息的对象工厂
1700474707
1700474708
@Deprecated
1700474709
1700474710
public static SignInfo(){
1700474711
1700474712
return new SignInfo();
1700474713
1700474714
}
1700474715
1700474716
//从池中获得对象
1700474717
1700474718
public static SignInfo getSignInfo(String key){
1700474719
1700474720
//设置返回对象
1700474721
1700474722
SignInfo result=null;
1700474723
1700474724
//池中没有该对象,则建立,并放入池中
1700474725
1700474726
if(!pool.containsKey(key)){
1700474727
1700474728
System.out.println(key+”–-建立对象,并放置到池中”);
1700474729
1700474730
result=new SignInfo4Pool(key);
1700474731
1700474732
pool.put(key,result);
1700474733
1700474734
}else{
1700474735
1700474736
result=pool.get(key);
1700474737
1700474738
System.out.println(key+”–直接从池中取得”);
1700474739
1700474740
}
[
上一页 ]
[ :1.700474691e+09 ]
[
下一页 ]