这是我目前所理解的。
当我们需要实例化对象时应该使用类
只有当我们有一个单一的需求意味着不需要多个“对象”实例时,我们才使用“对象”。我在想,当我们在项目中构建公共(public)库函数或实用程序函数时,我们可以使用“对象”,每次我们在该对象中使用方法/函数时都需要实例化。
当我们想要保存样板代码时,可以使用案例类。假设我们有“Stock”类。一般来说,每只股票都有数百个成员变量。如果我们使用案例类,而不是开发人员为 setter 和 getter 编写代码,它会生成许多默认代码。
特点:不知道什么时候用。 Traits 和 Objects 在初始化期间都不带参数。
任何更多的想法和想法请分享。
最佳答案
在 Scala 中,类的行为也与任何其他 OO 语言(例如 Java)中的行为一样 - 也就是说,您使用类在应用程序中构建对象(不是 Scala 对象),这些对象具有状态(例如,持有属性,比如一个人的名字) .
Scala 对象是单例。你在 Scala 中使用它主要是为了
案例类旨在用作轻量级类(例如数据容器)。默认情况下它们是不可变的,并且应该在结构上进行比较(即通过比较值/状态)而不是通过引用。
此外,它们还提供开箱即用的序列化等功能。
Traits 就像 Java 中的接口(interface),具有更多特性。它们定义了类/对象的接口(interface)。
在开始深入了解 Scala 之前,我建议先熟悉经典的 OO 原则。
关于scala - 何时使用类 vs 对象 vs 案例类 vs 特征,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43171730/