定义 :用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。
使用场景:
- 类初始化需要消耗相当多的资源,这个资源包括数据,硬件资源等,通过原型拷贝避免这些消耗。
- 通过new产生一个对象,需要非常繁琐的数据准备或访问权限
知识点:
- clone()方法是Object中的方法,Cloneable是一个标识接口,它表明这个类的对象是可以拷贝的。如果没有实现Cloneable接口,却调用了clone()函数,将抛出异常。
- 通过clone()拷贝对象时,并不会执行构造函数。
浅拷贝:只是克隆自身对象,其余属性直接引用原型数据
深拷贝:克隆自身对象,其余属性引用原型数据的拷贝,8种基本类型不需要原型拷贝
- 1.浅拷贝拷贝外层对象,对象里面的引用对象不进行拷贝。
- 2.深拷贝需要进行内部的拷贝(人为进行拷贝)。
网友评论