scala - 为什么不直接设置值

标签 scala variable-assignment

我正在阅读 project 的来源,并在那里找到了这样的代码:

private var _responded: Boolean = _
{
    _responded = false
}

我不明白他为什么这样写,是不是和:
private var _responded = false

它们之间有什么区别?

最佳答案

我是那个代码的作者。

像这样写:

private var _responded = false

在编译时导致此警告(使用较旧版本的 Scala,Scala 2.9 似乎没有问题):
the initialization is no longer be executed before the superclass is called

您可以通过谷歌搜索该警告以查找更多信息。

关于scala - 为什么不直接设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7087726/

相关文章:

java - 泛型方法返回值到方法和赋值的不同行为

javascript - Vue Js 所有赋值都是通过引用,即使是传播对象

scala - 为什么 Option 会扩展 Product?

scala - 是否可以在 Scala 中表达等效的 kotlin 'with' 方法?

Play Framework Routes 中的 Scala 反引号

scala - 在 Slick 3.0.0-RC3 中更新行,使用

Python 赋值运算符优先级 - (a, b) = a[b] = {}, 5

scala - 为什么方法参数化而类型参数从不使用?

python并行赋值3个变量

python - 条件分配