首页 > 其他分享 >数据复制区分-7.26

数据复制区分-7.26

时间:2023-07-26 15:55:56浏览次数:49  
标签:克隆 clone 7.26 数据类型 Realizetype 复制 引用 区分 s1

浅拷贝和深拷贝,浅克隆和深克隆在绝大多数情况下是同一概念。

浅克隆和浅拷贝都指的是对象的浅复制操作,只复制对象的引用而不复制内部包含的其他对象。

产生的各种误解多是对数据存储区域的划分和国内教材对指针和引用这里垃圾概念的提出。

java中有基本数据类型和引用数据类型,基本数据类型存在栈区,我们要的也就是它的实际值,也就是这些简单变量的实际值。引用数据类型的值也是存在栈区,但是我们要的是这个值所指向的堆区的地址所存的值。

总结:浅克隆和深克隆,区分它们的是对于对象内部包含的其他对象的处理方式。浅克隆只是简单复制引用的值,深克隆会将引用所指向的对象也进行数据拷贝,新引用指向这个新的相同数据的对象。

忘掉指针和引用的概念吧,反正都是存值,无非就是布尔值,整型,浮点型,字符型,然后排列组合衍生出数组,链表,对象这些东西。简单的数据类型直接存在栈区,复杂点的数据类型,把实际的数据存在堆区,在栈区存地址来指向堆区的实际数据。

点击查看代码
public class Realizetype implements Cloneable{
    public Student s1;
    public Realizetype(){
        System.out.println("具体的原型模型对象构建完成");
        s1 = new Student();
        s1.setAge(12);
        s1.setName("tom");
    }

    @Override
    protected Realizetype clone() throws CloneNotSupportedException {
        System.out.println("具体原型复制成功");
        Realizetype clone =(Realizetype) super.clone();  //浅克隆
/*        //这里执行深克隆
        clone.s1 = new Student();
        clone.s1.setAge(this.s1.getAge());
        clone.s1.setName(this.s1.getName());
        return clone;
		*/
    }
}

标签:克隆,clone,7.26,数据类型,Realizetype,复制,引用,区分,s1
From: https://www.cnblogs.com/liuzheorc/p/17582679.html

相关文章

  • 7.26 day3图论
    战绩:100+100+90+25=315rk2(如果T3不挂10分就rk1了)T1正解用的是状态之间建边跑bfs,赛时我没想到状态之间建边,糊了个费用流,同样能过,思路也很简单,直接网格之间建费用为1流量无限的边,在控制点和解密点限制一下流量即可T2二分答案+最小生成树检验注意可能爆longlong要边加边判......
  • dd命令:复制(拷贝)文件,并对原文件进行转换
    dd,是devicedriver的缩写,它可以称得上是“Linux世界中的搬运工”,它用来读取设备、文件中的内容,并原封不动地复制到指定位置。当我们用dd命令读取/dev/null文件时,就可以创造出空洞文件,而如果你的磁盘足够大,你甚至可以创造出一个宇宙黑洞呢!备份磁盘并恢复好记性不如烂笔头......
  • SqlServer将数据库中的表复制到另一个数据库;SqlServer怎样把一个数据库的数据复制粘贴
     一.复制表结构1.首先,打开并连接SqlServer,在源数据库Source_db(源数据库名称)上右键,然后依次点击“编写表脚本为”→“Create到”→“新查询编辑器窗口”。 2.在第1步产生的编辑器中按”crtl+a“组合键全选内容,然后右键“复制“(或按"crtl+c"键)。 3.新建查询,然后右键”粘......
  • 从另一电脑复制下来的MYSQL的数据文件(包括FRM IBD)快速恢复到另一MYSQL服务器过程
    从另一电脑复制下来的MYSQL的数据文件(包括FRMIBD)快速恢复到另一MYSQL服务器过程:1.安装mysql最好相同的版本,安装Navicateformysql,连接相应的服务器2.安装mysql-utilities,地址:https://downloads.mysql.com/archives/utilities/以恢复td_gov_company_abnormal.frm为例:3.C......
  • Mysql主从复制
    介绍MySQL主从复制时一个异步的复制过程,底层时基于MySQL数据库自带的二进制日志功能。就是一台或者多台MySQL数据库(slave从库)从另一台MySQL(master主库)进行日志的复制然后再解析日志并应用到自身,最终实现从库的数据和主库的数据保持一致。MySQL主从复制时MySQL数据库自带功能,无......
  • Python中的浅复制与深复制
     1.元组:元组是不可变的有序列表。1a=[30,40]2tuple_a=(1,2,a)3a[0]=34tuple_a5#>>>(1,2,[3,40])#元组是不可变的,但是元组中的元素如果是引用(某个对象的地址),引用的对象是可能会改变的。 2.copy模块中的copy方法可能可以浅复制......
  • sql server 创建复制机制
    SQLServer创建复制机制整体流程下面是创建SQLServer复制机制的整体流程,可以用表格展示步骤:步骤描述1创建发布者2创建订阅者3配置发布者4配置订阅者5启动复制具体步骤和代码示例步骤1:创建发布者首先,我们需要创建一个发布者(即主数据库),用来......
  • vue 实现复制功能
    不使用插件不使用插件,可以使用input标签,然后通过execCommand(‘copy’)函数实现复制功能。复制input标签中的内容<template><divid="app">请输入你需要复制的内容:<inputid="copy"v-model="mes"/><buttonv-on:click="copy()">复制</but......
  • 携程海外MySQL如何实现毫秒级数据复制?
    一、前言 在携程国际化战略背景下,海外业务将成为新的发力点,为了保证用户高品质的服务体验,底层数据势必需要就近服务业务应用。一套标准且普适的数据复制解决方案能够提升业务决策效率,助力业务更快地触达目标用户。 DRC(DataReplicateCenter)作为携程内部数......
  • C++11 可平凡复制类型 (TriviallyCopyable)
    可平凡复制类型标量类型(算数类型/枚举/指针)可平凡复制类类型可平凡复制类型的数组cv限定的可平凡复制类型(const/volatile)TriviallycopyableclassAtriviallycopyableclassisaclassthathasatleastoneeligiblecopyconstructor,moveconstructor,copyassi......