Java狗血神坑记录A a = new A();A b = a;a b指向同一个对象

这篇具有很好参考价值的文章主要介绍了Java狗血神坑记录A a = new A();A b = a;a b指向同一个对象。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

业务场景,有一个订单更新逻辑,测试订单不需要审批。
订单类型可编辑,如果是从测试类型–》正式类型,需要以上审批状态置为未审批,重新审批。
实际项目已经是七手八手的了,在原来的*山继续修修补补。
大致逻辑有下面这些东西文章来源地址https://www.toymoban.com/news/detail-671766.html

   SubOrder oldOrder = SubOrderService.getProjectById(id);
   // 一堆赋值、校验
   // ...
   // 奇葩来了
   SubOrder order = oldOrder;
   // 对order 一堆赋值操作 太多行没细看,就以为order是个新对象
   、、、此时 修改的还是oldOrder 原数据已经被改的面目全非了 、、、、
   // 下面校验了一个原始状态 是测试类型,新类型是正式类型,状态 赋值为待审批
	if ("0".equals(oldOrder.getOrderType()) && "1".equals(order.getOrderType())) {
		// 审批状态改成待审批
        order.setStatus("1");
     }
     // 结果自然没有用 状态并没有改
     // 破问题找了半天
   


到了这里,关于Java狗血神坑记录A a = new A();A b = a;a b指向同一个对象的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 同一个请求同一个参数,postman发送成功,jmeter失败

    当使用jmeter 请求时吗,注意请求参数中是否包含中文。 问题来由: 1.先用postman发送,成功。  2.一模一样,header一样,请求一样,但是就是一直查询不出来。 3.经过fiddler抓包,再次对比请求头,请求体,还是没有发现有什么差别。 4.猜想: 此接口其他参数传送,都没有问题

    2024年02月13日
    浏览(55)
  • 如何将微前端项目部署在同一台服务器同一个端口下

    作者:京东科技 高飞 本文旨在通过部署微前端项目的实践过程中沉淀出一套部署方案,现就一些重点步骤、碰到的问题做了一些总结。 因为线上部署主应用时需要用到子应用的线上可访问地址,因此部署顺序应该是先部署子应用,保证子应用能够线上可访问后,再将子应用

    2023年04月11日
    浏览(57)
  • 【注意】当同一个Class的多个对象出现在同一段代码内的时候,极易出错。

    下面的 paymentQuery 方法坐落于我们lijianjin系统的LiJianJinPaymentQueryBizService。 这两个bankOrderFlow、orderFlow,... 乱花渐欲迷人眼的赶脚,但其实,这是像“shǐ”一样的代码。         在我们的zhongtai-channel-provider, 上周出现并紧急fix了一个bug。竟然也是 此种情况 引发的bug。   先上

    2024年04月28日
    浏览(66)
  • CSS 沿着同一个方向旋转

    主要解决旋转360°后倒转的问题,沿着一个方向旋转,而不是倒回去重新开始。 效果  源码 在线示例 同方向旋转

    2024年02月15日
    浏览(51)
  • 多个硬盘挂载到同一个目录

    同一目录无法重复挂载,后挂载的会覆盖之前挂载的磁盘。但是现在需要将4块磁盘并行挂载,该如何操作呢? 将2块磁盘合并到一个逻辑卷 进行挂载。 基本知识 基本概念PV(Physical Volume)- 物理卷物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整

    2024年02月08日
    浏览(84)
  • 不同版本.net引用同一个项目

    项目文件.csproj文件内容如下: 重点是:不能有其他的 netstandard2;net40;net45;net46;net6

    2024年02月10日
    浏览(55)
  • 不同设备使用同一个Git账号

    想要在公司和家里的电脑上用同一个git账号来pull, push代码 第1种方法, 依次输入 第2种方法, 输入 用户名和邮箱与原设备保持一致 输入上面三句话之后会弹出提示是否在此电脑上创建.ssh文件夹,回车同意即可 接着会提示设置密码,不设置就连按两次回车 完成之后,在 “

    2024年04月10日
    浏览(56)
  • Unity批量给模型上同一个材质

    Unity批量给模型上同一个材质 第一步:先选择所有要上材质的模型:  第二步:将创建的材质拖到右侧属性栏:  

    2024年02月12日
    浏览(42)
  • axios同一个接口,同时接收 文件 或者 数据

    1、前端代码  主要是: if (response.data instanceof Blob)  判断是否是 Blob 对象, 否则使用: response.data = JSON.parse(await (response.data).text()) 将后台返回的内容转成 文本 返回 主要是: responseType: \\\'blob\\\' 2、后端代码 需要注意的是: response.setHeader(\\\"Access-Control-Expose-Headers\\\", \\\"filename\\\"); 否则

    2024年02月12日
    浏览(58)
  • vue 实现多个路由共用同一个页面组件

    这样的弊端是如果router-view里包含其他组件,切换其他组件会让其他组件也重新渲染。 这样的问题是导致切换路由会闪烁一下。因为切换后所有钩子函数都重新触发了。

    2024年02月07日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包