我已经开始在scala上工作了。到了我想正确使用继承的地步。斯卡拉小孩listbuffer返回作为父列表缓冲区
我被困在一次地方。我试图在线阅读文档和其他信息。但我似乎被卡住了。 请看看这个,告诉我你是否曾经遇到过这种情况,以及我是否在做一些真正错误的事情。
所以,这是我的方法:
def getFacethierarchy): ListBuffer[BaseClass] = {
val obj: Childclass = new ChildClass(1, "2")
val list: ListBuffer[ChildClass] = ListBuffer[ChildClass]()
list += obj
list
}
class BaseClass(var id: Int){
}
class ChildClass(id: Int, var name: String) extends BaseClass(id){
}
现在Scala是不是让我回到一个ChildClass实例。 在Java中,这将工作(孩子是父类型)
我试图改变我的方法签名返回“任何”。 我不知道我出错了。 请尽可能帮忙。
更新: 为了更具体地了解我在做什么,我更新了代码段。
什么是编译器在说什么? –
由于代码中存在语法错误,并且在未给定定义的情况下引用变量,所以您真的不清楚要实现的内容。 – Ryan
BaseClass类型的表达式无法转换为ChlidClass – Roger