【发布时间】:2019-08-20 10:32:52
【问题描述】:
例如,假设我有一个密封特征 AnimalSounds,我有一个案例类“狗”和一个案例类“猫” 我希望这两个案例类的值默认为“Woof”和“Cat”
sealed trait AnimalSounds extends Product with Serializable
final case class Dog(sound: String = "woof") extends AnimalSounds
final case class Cat(sound: String = "meow") extends AnimalSounds
println(Dog.sound)
我收到错误“声音不是对象的成员”
【问题讨论】:
-
我建议你首先阅读如何访问案例类成员的基础!
-
如果您希望声音表现得像一个没有人可以更改的常量,并且无需创建实例即可使用,请改为在 Companion 对象上创建它。