trait A{def hello() = println("hello")} val t = new A() error: trait A is abstract; cannot be instantiated val t = new A{} t: A = $anon$1@6e0f0e45 t.hello() hello val t = new A() val t = new A{} 注意区别 scala 大小括号 有时 可以互换 是一个迷惑行为 scala 学得走火入魔 忘记了 java 基本语法 new A{} Java 常规写法 匿名类 想起另外一个段子 由于 <- => 的存在,在代码看到 <= 的时候 ,花了很长时间去想这个到底是什么意思