为什么scala REPL不允许在另一个函数中有多个具有相同名称的函数?
def wrapper(): Unit = {
def a: Unit = ???
def a(i: Int): Unit = ???
}
错误:方法a定义了两次
冲突的符号都起源于文件'<控制台>'
答案 0 :(得分:2)
看起来你想在一个方法中使用重载(OOP特性),这对于那个不合适的OOP原语,从OOP的角度来看它看起来并不合适(我同意编译器)。要将其与OOP功能对齐,只需将其包装在对象中:
def wrapper(): Unit = {
object wr {
def a: Unit = ???
def a(i: Int): Unit = ???
}
wr.a(10)
wr.a
}