переменная Это очень похоже на ошибку компилятора для меня.

оложим, у меня есть следующий абстрактный класс:

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?

Спасибо Дэн

Ответы на вопрос(2)

Ваш ответ на вопрос