我正在尝试在伴随对象中创建案例对象列表。这些对象都继承自一个密封的抽象类。但是编译器对列表中的每个项目都说“未找到:值 CompositeSpectrum”等等。密封的类和案例对象都编译得很好,只是当我尝试在伴随对象中创建列表时,我得到了错误。
sealed abstract class Peculiarity(val abbreviation: String, val description: String) {
case object CompositeSpectrum extends Peculiarity("comp", "composite spectrum")
case object NebularFeaturesPresent extends Peculiarity("neb", "nebular features present")
case object ShellStar extends Peculiarity("sh", "shell star")
case object Uncertainty extends Peculiarity(":", "uncertainty")
case object VariableSpectralFeatures extends Peculiarity("var", "variable spectral features")
case object WeakFeatures extends Peculiarity("wl", "weak features")
case object VeryBroadAbsorptionFeatures extends Peculiarity("nn", "very broad absorption features")
case object BroadAbsorptionFeatures extends Peculiarity("n", "broad absorption features")
case object EmissionLinesPresent extends Peculiarity("e", "emission lines present")
case object NIIIandHEIIEmission extends Peculiarity("f", "NIII and HeII emission (O stars)")
case object EnhancedMetalFeatures extends Peculiarity("m", "enhanced metal features")
case object OtherPeculiarity extends Peculiarity("p", "other peculiarity")
case object VeryNarrowAbsorptionLines extends Peculiarity("s", "very narrow absorption lines")
}
object Peculiarity {
val peculiarities = List[Peculiarity](
CompositeSpectrum,
NebularFeaturesPresent,
ShellStar,
Uncertainty,
VariableSpectralFeatures,
WeakFeatures,
VeryBroadAbsorptionFeatures,
BroadAbsorptionFeatures,
EmissionLinesPresent,
NIIIandHEIIEmission,
EnhancedMetalFeatures,
OtherPeculiarity,
VeryNarrowAbsorptionLines)
}