gpt4 book ai didi

scala - 一个对象在 Scala 中扩展了它的伴随案例类

转载 作者:行者123 更新时间:2023-12-02 03:45:08 25 4
gpt4 key购买 nike

例如,在 Play 框架中,

您会在 play.api.libs.json 包中看到一个案例类 JsPath 及其伴生对象定义如下

case class JsPath(path: List[PathNode] = immutable.this.Nil) extends Product with Serializable

object JsPath extends JsPath

一般来说,当你用它的伴随案例类扩展一个对象时,你会得到什么好处?

最佳答案

除了一些混淆之外没有任何好处,您可以使用 JsPath对象为空 JsPath .如果您需要一个空对象,如果您给它一个单独的名称(相当于 ListNil ),它可能更具可读性:

object EmptyJsPath extends JsPath(Nil)

或者你定义一个 empty同伴上的方法(像大多数其他集合类一样):
object JsPath {
def empty = ...
}

关于scala - 一个对象在 Scala 中扩展了它的伴随案例类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17553888/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com