当Joshua Bloch提到Java中的Cloneable接口被破坏时,为什么Prototype模式使用clone()
方法来促进对象创建,而不是Java开发中的反模式?
"令人遗憾的是Cloneable被破坏了,但它确实发生了。" - 约书亚布洛赫
答案 0 :(得分:9)
不,Prototype不是反模式。
Prototype Design Pattern与语言无关。它适用于许多其他面向对象的编程语言,并且它有多种可能的实现方式。
虽然设计到Java类库中的实现确实是broken,但这并不意味着模式也被破坏了。这意味着如果你想在你的设计中使用这种模式,你应该远离内置的支持,而是自己制作。