首先我不会讲什么高深的理论,理论这方面我也学的不好,我只谈谈我的理解吧。
第一个时浅克隆,我理解的浅克隆就是不完全复制,再说简单就是如果变量是对象型的,如果你复制的这几个浅克隆变量,其中一个变化了,那么全部都跟着变化,最简单的浅克隆就是用等号(=)进行赋值,如果你复制的是基础变量(如int,布尔值,float,double,long这几个),你用等号进行赋值,两个变量不相互影响,但是是其他的就不行。另一个浅克隆的方法是让类继承Cloneable类,这样的话你就可以用clone方法进行复制,这样就可以很容易进行复制,你在类中定义的变量,都是不相互影响,这些变量包括Java中提供所有变量类型,但是你类里有自己定义的对象(类),那就不是不相互影响了,会随着一个变量,而全部变化,当然这个变化只局限你自己定义的那个对象(类);如果想让这个对象也相互之间不影响,这就需要进行深克隆了。其实深克隆也很简单,只是让你定义的那个类也继承Cloneable类,这样就可以实现深克隆了,复制出两个对象不相互影响了,
Java的浅克隆与深克隆
最新推荐文章于 2023-06-12 13:11:15 发布