相关疑难解决方法(0)

为什么不推荐使用参数列表的案例类?

为什么没有参数列表的案例类不推荐使用Scala?为什么编译器建议使用()参数列表呢?

编辑:

有人请回答我的第二个问题......:|

scala deprecated case-class

41
推荐指数
2
解决办法
1万
查看次数

Scala中抽象特征的语义

我想知道将abstract关键字与a结合使用的语义是什么trait.

如果特征没有定义任何抽象方法,则abstract关键字不会阻止我创建实例:

scala> abstract trait T
defined trait T

scala> new T{}
res0: java.lang.Object with T = $anon$1@12cd927d
Run Code Online (Sandbox Code Playgroud)

另一方面,如果特征确实定义了一个抽象方法,那么无论abstract关键字是否存在,我都无法创建实例(当然不实现此方法):

scala> abstract trait T { def foo : Unit }
defined trait T

scala> new T{}
<console>:9: error: object creation impossible, since method foo in trait T of type =>    Unit is not defined
              new T{}
                  ^

scala> trait T { def foo : Unit }
defined trait T

scala> new T{}
<console>:9: …
Run Code Online (Sandbox Code Playgroud)

scala traits abstract

16
推荐指数
1
解决办法
6226
查看次数

标签 统计

scala ×2

abstract ×1

case-class ×1

deprecated ×1

traits ×1