下面是享元模式结构图:
在这里,您可以看到 GoF 解释的 UnsharedConcreteFlyweight:
UnsharedConcreteFlyweight :并非所有 Flyweight 子类都需要共享。享元界面可实现共享;它不强制执行它。UnsharedConcreteFlyweight 对象通常在享元对象结构中的某个级别将 ConcreteFlyweight 对象作为子对象(如 Row 和 Column 类所具有的)。
据我所知,这里Operation
需要in extrinsicState
作为参数,但就allState
成员数据而言,它根本不会使用它。
这是一个好的设计吗?采用您不使用的参数,如果您将使用,那么您将有数据重复。这甚至可能违反了里氏替换原则?