这是我的课程我正在尝试为以下内容创建以下构造函数:
class StatsView(name: String, manager: AssetManager, statistics: Statistics) extends Node(name) with Control {
....
这是我尝试使用Node
的构造函数的对象object Node {
def apply(name: String) = new Spatial(name) with Node
def apply() = new Spatial with Node
}
trait Node extends Spatial {
我的问题是Node是导致编译器出现此错误消息的特征:
trait Node is a trait; does not take constructor arguments
特质节点是一种特质;不采用构造函数参数
类StatsView(name:String,manager:AssetManager,statistics:Statistics)使用Control {
扩展Node(name)
希望你能帮助我。
答案 0 :(得分:4)
问题是Node(name)
只是一个方法调用,所以不能在extends
中。你需要写这样的类型:
class StatsView(name: String, manager: AssetManager, statistics: Statistics) extends
Spatial(name) with Node { ... }
我的问题是我需要调用Node的超级构造函数
由于Node
不是类,因此它没有超级构造函数。