Может кто-нибудь мне помочь?переопределяющее значение .... в классе ..... типа Решение; значение ..... имеет несовместимый тип (scala)
abstract class Puzzle {
val sections : List[Int]
val valid : (Position => Boolean)
val initSoln : Solution
val initDir : Direction
}
case class StandardPuzzle() extends Puzzle {
val sections = snake
val valid = inCube(3)_
val initSoln = List(List(1,1,1))
val initDir = (0,0,1)
}
после использования интерпретатора Scala:
<console>:22: error: overriding value initSoln in class Puzzle of type Solution;
value initSoln has incompatible type
val initSoln = List(List(1,1,1))
Что нужно сделать, чтобы решить эту проблему ??
Большое спасибо :))
Проблема в том, что вы пытаетесь переопределить метод, который должен возвращать 'Solution' методом, который возвращает' List [List [Int]] '. Таким образом, вы можете либо изменить подпись 'initSoln' в' Puzzle', чтобы вернуть 'List [List [Int]]' или вернуть экземпляр 'Solution' в' StandardPuzzle'. Но мы не можем с этим справиться, если вы не дадите нам определение класса «Решение». – adamwy