原型模式:原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式
适用场景:
- 类初始化消耗资源过多
- new产生一个对象需要非常繁琐的过程
- 构造函数比较复杂
- 循环体中生产大量对象时
https://www.runoob.com/design-pattern/prototype-pattern.html
https://www.cnblogs.com/nickhan/p/8569329.html
浅拷贝:创建一个新对象,然后将当前对象的非静态字段复制到该对象,如果字段类型是值类型(基本类型)的,那么对该字段进行复制;如果字段是引用类型的,则只复制该字段的引用而不复制引用指向的对象。此时新对象里面的引用类型字段相当于是原始对象里面引用类型字段的一个副本,原始对象与新对象里面的引用字段指向的是同一个对象。
深拷贝两种方式:第一种是给需要拷贝的引用类型也实现Cloneable接口并覆写clone方法,手动克隆引用类型属性;第二种则是利用序列化
网友评论