键入Scala类的成员和值成员

时间:2013-09-06 14:49:46

标签: scala

在Scala中,类可以有类型成员和值成员,我只是想知道这两者之间的区别是什么,以及何时使用其中一种。

1 个答案:

答案 0 :(得分:3)

值成员(或者更确切地说,术语成员)是表示某些值的类成员。 它们是:def s,val s,var和内部object s。

类型成员是表示类型的成员。这些是内部类,特征和抽象类型或类型别名(使用关键字type声明或定义)。

abstract class A {
  // examples of term members
  val someVal = 5
  var someVar = 0
  def someMethod(someParam: Int) = someParam * 2
  object someInnerObject

  // examples of type members
  type SomeTypeAlias = List[String]
  type SomeAbstractType
  trait SomeInnerTrait
  class SomeInnerClass
}

我不知道对这种分类有什么更重要的说法。如果有的话,我希望有人可以提供更一般的解释。