Java平台上存在Prototype模式的哪些实现?
原型模式是在软件开发中使用的创建设计模式,当要创建的对象类型由原型实例确定时,该实例被克隆以生成新对象。
基于原型的编程是一种面向对象的编程风格,其中不存在类,并且通过克隆作为原型的现有对象的过程来执行行为重用(在基于类的语言中称为继承)。
实现应该知道一些Java对象是可变的,有些是不可变的(参见Mutable vs Immutable objects)。
答案 0 :(得分:2)
根据Josh Bloch和Doug Lea,Cloneable is broken。在这种情况下,您可以使用copy constructor。
答案 1 :(得分:0)
Java提供了一个名为Cloneable的简单接口,它提供了Prototype模式的实现。如果您有一个Cloneable对象,则可以调用其clone()方法来创建具有相同值的对象的新实例。
警告:请参阅Cloneable is broken
答案 2 :(得分:0)