我有一个特性并尝试在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方法然后在Main类中extend
该类并调用该方法)?
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()
}
}
答案 0 :(得分:1)
不,这不是一个好方法。主要功能是开始运行您的应用程序。为什么你需要从Main扩展任何类?如果你想使用其他类,只需调用它们的对象。