原型模式
原型模式的作用,简化new一个对象的繁琐复杂的过程。 BeanUtils.copy() JSON.parseObject() 都是原型模式。 返回结果false,可以看出t1t2的地址不同,只是将里面的属性值复制给了t2,但真的是这样么? 发现,当改变t2的classmate的时候,t1也随之改变了。 这里引出一个概念,浅克隆与深克隆。 浅克隆与深克隆的区别在于非基本对象的赋值时,浅克隆时赋值的地址。深克隆则是也只是复制对象内容而不是指向的地址。 可以采用流的方式完成深克隆 返回结果: 这样就能完成深克隆了! 来源: https://blog.csdn.net/fox_233/article/details/99316089