浅谈设计模式—— 原型模式
2018-09-11 本文已影响1人
设计失
原型模式使用场景:
- 类初始化消耗非常多资源
- new一个对象需要非常繁琐的数据准备或访问权限
- 一个对象需要给其他对象访问,每个调用者都需要修改其值时
简单实现
/**
* Created by Ellison
* @date 2017/11/9
* @desc 用一句话描述这个类的作用
*/
class WordDocument : Cloneable {
var mText = null;
var mImages = ArrayList<String>()
init {
println("-----------WordDocument------------")
}
override fun clone() : WordDocument{
try {
val wd: WordDocument = super.clone() as WordDocument
wd.mText = this.mText
wd.mImages = this.mImages;
return wd
} catch (e:Exception) {
}
return WordDocument()
}
}