Предположим, у меня есть следующий абстрактный класс:
abstract class A (var is_happy : Boolean) {
def toggle_happiness();
}
А теперь я хочу определить конкретный класс, который реализует toggle_happiness ( )
метод:
class B (is_happy : Boolean) extends A (is_happy) {
def toggle_happiness() = {
is_happy = !is_happy
}
}
Компилятор Scala дает мне:
error: reassignment to val
is_happy = !is_happy
^
Что здесь происходит? Я думал, что is_happy
относится к var
в моем классе, который задается моим конструктором. У меня конфликт с именем is_happy
?
Спасибо, Дэн