需要怎么做啊,这个面试官的问题是在问   对象的 深浅clone   还是意思在
clone  对象,如何保证 clone 后的对象 不随原来的对象的变化啊,我这一脸懵逼。、
来个大佬一块探讨下:
如果是后者的话 ,我这倒是有一点思路, 那就是把clone 的 对象 json 化,转化为json格式的
就行了,使用的时候,再转化回来就行了
但是这个场景   ,我真不明白这个点在哪?后端商品数据可以实时变化的不假,但是我为什么要 copy 该对象?有什么卵用?、
业务场景是什么呢?
真是一脸蒙。

解决方案 »

  1.   

    cglib的BeanCopier  意思是 copy的 次数越多效率越高,他是想要我回答这样的么?
      

  2.   

    其实就是值传递还是引用传递的问题,对象想实现“值传递”的话需要把对象里的每个属性都复制一下。
    至于使用场景还是不少的,比如原对象要修改,但是需要copy一份作为临时存放,以便于之后还原。
      

  3.   

    你觉得这个问题很奇怪是因为Java里除了基本类型外,赋值都是引用传递,而有些语言是支持数据(包括对象这种结构性的数据)的值传递的。
      

  4.   


    这样说的话,也就是要考察   对象的深浅clone 问题了
    浅克隆值传递是随源对象改变而改变的
    需要采用深克隆了