package com.example.designmodel;
import java.util.Hashtable;
/**
* 享元模式
*/
public class FlyweightModel {
/**
* 公司人员
*/
public class User{
private String name;
private Phone phone;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Phone getPhone() {
return phone;
}
public void setPhone(Phone phone) {
this.phone = phone;
}
}
/**
* 手机
*/
public class Phone{
private String phoneName;
private String phoneColor;
public String getPhoneName() {
return phoneName;
}
public void setPhoneName(String phoneName) {
this.phoneName = phoneName;
}
public String getPhoneColor() {
return phoneColor;
}
public void setPhoneColor(String phoneColor) {
this.phoneColor = phoneColor;
}
}
/**
* 公司原有一箱(pool)旧手机Phone分发给员工User做工作手机使用,如果不够,就新买(new)一个
*/
public class PhoneFactory{
Hashtable pool = new Hashtable();
Phone getPhone(String key){
Phone phone;
phone = (Phone)pool.get(key);
if(phone == null){
phone = new Phone();
pool.put(key,phone);
}
return phone;
}
}
}
享元模式
最新推荐文章于 2024-10-08 19:15:12 发布