相关疑难解决方法(0)

特征实例化后的花括号如何工作?

我在一些单元测试代码中发现了一些令人困惑的特性使用,例如:

trait MyTrait {
  val t1 = ... //some expression
  val t2 = ... //some expression
}
Run Code Online (Sandbox Code Playgroud)

然后使用new实例化特征,同时在实例化之后用花括号包裹一些表达式.

test("it is a test") {
  new MyTrait {
    // do something with t1 and t2
  }
}
Run Code Online (Sandbox Code Playgroud)

我对这种奇怪的语法感到困惑.

我的问题是:

  1. 为什么使用花括号跟随特征实例化?

  2. 在这种情况下特征实例化的目的是什么,其他情况也可能有帮助?

scala traits

16
推荐指数
2
解决办法
5272
查看次数

标签 统计

scala ×1

traits ×1