gpt4 book ai didi

斯卡拉。部分类

转载 作者:行者123 更新时间:2023-12-04 23:19:08 27 4
gpt4 key购买 nike

scala 中是否有任何等效于 C# 部分类的东西?我想用这样的对象离开我的功能:

// file 1:
object MainClass {
def addValue(value: AnyRef) = ???
}

// file 2:
partial object MainClass {
addValue(1)
}

// file 3:
partial object MainClass {
addValue(2)
}

// file 4: initialize MainClass
MainClass.init()

如何使用 Scala 实现此功能?

最佳答案

您可以做的最接近的事情是将您的功能划分为特征,并将它们划分到单独的文件中:

// file 1:
class MainClass extends Functionality1, Functionality2

// file 2:
trait Functionality1 {
self: MainClass =>
}

// file 3:
trait Functionality2 {
self: MainClass =>
}

请注意,通过使用 self-type 并将其设置为 MainClass ,您确保每个特征都可以引用最终将混合到 MainClass 中的所有成员。 .

关于斯卡拉。部分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32445510/

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