Scala Trait (Mixin) 的写法
Ways to write Scala Trait (Mixin)
你好,我是 scala 的新手,我有以下场景,我有一个特征让我们假设特征如下
trait abc{
def someFun();
}
这个someFun()包含两个函数fun1()和fun2()。同样,函数 fun1() 和 fun2() 可以包含其他函数。 我只会调用 someFun() 其他的都应该被执行,
我如何使用 scala trait 实现上述场景。示例代码示例将是预期的。
如果我对你的问题理解正确,你想将 fun1 和 fun2 定义为 someFun 范围内的局部函数。与 Java 中的接口不同,scala 中的特征可以有实现。所以你可以这样做:
trait abc {
def someFun() {
def fun1() { println("Hello") }
def fun2() { println("Bye") }
fun1()
fun2()
}
}
object impl extends abc
impl.someFun()
你好,我是 scala 的新手,我有以下场景,我有一个特征让我们假设特征如下
trait abc{
def someFun();
}
这个someFun()包含两个函数fun1()和fun2()。同样,函数 fun1() 和 fun2() 可以包含其他函数。 我只会调用 someFun() 其他的都应该被执行, 我如何使用 scala trait 实现上述场景。示例代码示例将是预期的。
如果我对你的问题理解正确,你想将 fun1 和 fun2 定义为 someFun 范围内的局部函数。与 Java 中的接口不同,scala 中的特征可以有实现。所以你可以这样做:
trait abc {
def someFun() {
def fun1() { println("Hello") }
def fun2() { println("Bye") }
fun1()
fun2()
}
}
object impl extends abc
impl.someFun()