应用场景
在天猫商城里存在着成天上万的网店,但是天猫所提供的网站模板是一样的,存在许多天猫网店使用同一个网店模板的情况,如果每一个网店都用一个网店对象来表示,因为网店数量巨大,我们需求很多的网店对象来表示,但是,采用同一套网店模板的网店除了里面所展示的内容不一样以外,网店的风格样式几乎一致,除了一些定制化的功能,比如logo等,请使用享元模式来模拟此问题,绘制享元模式类图,并绘制该实例的类图,并编写代码演示结果。
享元模式结构类图
根据类图设计代码
WebShop(抽象享元类)
public abstract class Oyy22WebShop {
public abstract void use(Oyy22Style id);
}
ConcreteFlyweight(具体享元类)
public class Oyy22ConcreteWebShop extends Oyy22WebShop {
private String name = "";
public Oyy22ConcreteWebShop(String name) {
this.name = name;
}
public void use(Oyy22Style id) {
System.out.println("网店分类:" + name+"风格:"+id.getId());