gpt4 book ai didi

singleton - 对象和数据对象有什么区别?

转载 作者:行者123 更新时间:2023-12-01 08:26:51 24 4
gpt4 key购买 nike

前几天我注意到我有时将 data 放在 object 的前面,而其他时候则没有:

object A

data object B

objectdata object有什么区别?

最佳答案

data 在对象声明中被允许的事实实际上是一个应该修复的错误 (KT-6486)。

data是一个注解,它导致编译器生成 equalshashCodetoStringcopycomponentN 函数。应用于对象声明时没有多大意义,原因有两个:

  • 对象声明不能有构造函数,所有这些函数都基于主构造函数中定义的属性工作。
  • 任何对象在运行时只有一个实例。

所以不会生成componentN函数,copy不能工作,生成的equals/hashCode/toString 实现将等同于基于身份的 Any 中的默认实现。

关于singleton - 对象和数据对象有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32288743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com