重新组织数据

== 的作用:
  基本类型:比较值是否相等
  引用类型:比较内存地址值是否相等

equals 的作用:
  引用类型:默认情况下,比较内存地址值是否相等。可以按照需求逻辑,重写对象的equals方法。

误区大解释:
引用对象和值对象,我一直以为引用对象是类,值对象是字段。原来不是这样,是以意义区分,不是数据结构区分。
引用对象和值对象区分,像在现实生活中可以抽象为一个事物,有一定的行为,比如Aniaml类。
值对象是日期Date类 Money类这种完全由数据值来定义的值类。
类本身的概念是单纯储值,另一个是有行为。

值对象,强调值相同,只要是调用同一个对象的同一个查询函数,都应该获得一样的结果,换言之判断两个对象是否相等,是根据值来判断,就是根据equals hashco de是否相等,通过重写两个函数来比较。
所以每一个值对象里面维护了一个值,值对象不像引用对象,修改了值对象,所有引用值对象的都地方都自动修改,`值对象是不可变得`,里面只维护当前一个值。如果想要修改一个值对象的值,那就新写一个值对象将想修改的值放进去。当频繁有这种需要引用地方同步修改,不如就变为引用对象了

值对象如果被维护在一个类里,每一个类都有一个自己的值对象在栈里。引用对象可以是多个类维护一个。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值