首页 文章

scala中何时需要新的[重复]

提问于
浏览
4

可能重复:Scala中的“new”关键字

我注意到在Scala中创建某些实例你可以使用 new . 什么时候需要开发人员使用 new ?为什么有些物品会让你错过使用它?

谢谢

List(“this”,“is”,“a”,“list”)创建这四个字符串的List;没有新的必需Map(“foo” - > 45,“bar” - > 76)创建一个String到Int的Map,没有新的必需和没有笨拙的助手类 .

取自here ..

1 回答

  • 11

    通常,scala集合类使用 apply 方法在其伴随对象中定义工厂方法 . List("this","is","a","list")Map("foo" -> 45, "bar" ->76) 是用于调用这些apply方法的语法糖 . 使用这个约定是相当惯用的scala .

    此外,如果您定义 case class C(i: Int) ,它还定义了一个工厂 C.apply(i: Int) 方法,可以将其称为 C(i) . 所以没有新的需要 .

    除此之外, new 是创建对象所必需的 .

相关问题