当前位置:   article > 正文

JAVA 浅拷贝和深拷贝_java深浅拷贝

java深浅拷贝

拷贝

拷贝即对已有的数据创建一个副本,在 Java 中,拷贝可分为引用拷贝、浅拷贝、深拷贝。

引用拷贝

在 Java 中,实例化后的对象存储在堆区,而局部变量存放在局部变量表(栈)中,如:

  1. public void yinYongCopy() {
  2. User user = new User("xiaoming", 12);
  3. }

user 变量只是存放堆区 User 实例的引用(地址)。那么把 user 赋值另一个变量 copy,称为引用拷贝(相当于地址赋值)。

  1. public void yinYongCopy() {
  2. User user = new User("xiaoming", 12);
  3. User copy = user;
  4. }

user 和 copy 两个变量存放了 User 实例的指向,他们指向了同一份堆内存空间。

浅拷贝

在 java 中,默认的拷贝指的是类重写 Object 类中的 clone 方法,调用该方法进行拷贝。Object 类中的 clone 方法使用 Native 修饰,由本地方法实现,

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/68583
推荐阅读
相关标签
  

闽ICP备14008679号