当前位置: 首页 > news >正文

【Java学习笔记】克隆对象

克隆对象

代码实现

public class practise {public static void main(String[] args){person p = new person();p.age = 10;p.name = "jackson";tool mytool = new tool(); // 创建tool类的一个对象person p1 = mytool.copyperson(p); // 调用 tool 这个类的一个方法,因为返回值是person类,所以用person类的一个对象接收System.out.println("main方法的对象p的年龄为:" + p1.age);System.out.println("main方法中的对象p的名字为:" + p1.name);System.out.println("复制的对象p1的年龄为:" + p1.age);System.out.println("复制的对象p1的名字为:" + p1.name);}
}class person{int age;String name;
}
class tool{public person copyperson(person p){person p1 = new person();p1.name = p.name;p1.age = p.age;return p1;}
}

分析

新创建一个 person 类指向一个新的堆空间返回地址给p1,让p1指向这个堆空间,之后返回这个person类对象,用用新的person类对象接收,打印属性看是否复制成功

相关文章:

  • 【HCIA】NAT Server
  • mysql约束
  • RocketMQ 存储核心:深入解析 CommitLog 设计原理
  • UARA串口开发基础
  • PCB硬件电路设计_pcb布线设计
  • SpringAI集成本地部署DeepSeek大模型服务(Ollama)
  • Android开发,实现一个简约又好看的登录页
  • 深入理解java线程池
  • [RoarCTF 2019]Easy Calc 详解
  • 空洞/膨胀卷积
  • clangd-vscode配置
  • 网络安全之红队LLM的大模型自动化越狱
  • LinuxAgent开源程序是一款智能运维助手,通过接入 DeepSeek API 实现对 Linux 终端的自然语言控制,帮助用户更高效地进行系统运维工作
  • 遗传算法实现单货架库位优化
  • 在Linux系统中安装Anaconda的完整指南
  • vue3代码规范管理;基于vite和vue3、 eslint、prettier、stylelint、husky规范;git触发eslint校验
  • JavaWeb:vueaxios
  • 光触发RFID:破解物流、电力、资产管理三大领域的“不可能三角”
  • 基于 Python 的实现:居民用电量数据分析与可视化
  • 基于SpringBoot的食物营养分析与推荐网站系统
  • 鄂湘赣“中三角”,能否走向文旅C位?
  • 王星昊再胜连笑,夺得中国围棋天元赛冠军
  • BNEF:亚洲、中东和非洲是电力基础设施投资的最大机会所在
  • 挤占学生伙食费、公务考察到景区旅游……青岛通报5起违规典型问题
  • 伊朗港口爆炸已致46人死亡
  • 金融创新破局记:中小微企业转型背后的金融力量