【发布时间】:2018-04-29 11:05:49
【问题描述】:
我有一个特征并试图在Main 对象中实现它。这可能吗?最佳做法是什么?
trait PrintThis {
def nowPrint (thing:String)
}
object Main extends PrintThis {
def main(args: Array[String]): Unit = {
def nowPrint(thing:String): Unit = {
println("subject" )
}
nowPrint("test")
}
}
如果这不可能 - 这是更好的方法吗(extend 另一个类中的 trait 并在另一个类中实现 trait 方法,然后 extend Main 类中的那个类并调用该方法)?
trait One {
def show()
}
class Two extends One {
def show() {println ("This is a show!") }
}
object Main extends Two {
def main(args: Array[String]): Unit = {
show()
}
}
或者在 Main 中实例化新类而不是 extending 可能更好?
object Main {
def main(args: Array[String]): Unit = {
var pointer:Two = new Two
pointer.show()
}
}
【问题讨论】: