gpt4 book ai didi

scala:防止伴随对象隐藏原始类的定义

转载 作者:行者123 更新时间:2023-12-04 20:49:35 25 4
gpt4 key购买 nike

我认为这更容易用一个例子来展示。

假设我有一个 Condition 案例类,有一个 Condition 伴随对象用于提供替代构造函数,如下所示:

case class Condition(
field: String,
values: List[String])
}

object Condition {
def apply(field: String, value: String): Condition = {
Condition(field, List(value))
}
}

当我从另一个导入它时,我收到以下警告(最终变成错误):
import utils.query.Condition 

[warn] [...]/ConditionBuilder.scala:14: imported `Condition' is permanently hidden by definition of object Condition in package query
[warn] import utils.query.Condition
[warn] ^
[warn] one warning found

我想在声明变量的类型时访问条件类型,并在执行它的方法之一时访问伴随对象

有什么方法可以实现这一点并避免此警告(当然,除了重命名伴随对象)?

最佳答案

到目前为止,我发现的解决方法是这样导入的:

import utils.query

[...]

val myCondition: query.Condition

警告消失了,但我认为应该有更好的解决方案......

关于scala:防止伴随对象隐藏原始类的定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12356708/

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