【发布时间】:2013-04-25 06:56:08
【问题描述】:
目前,我在我的 Scala 类、特征和对象[1] 中为 public vals、vars 和 defs 输入类型注释——或者通过心理推断它们的类型,或者偶尔通过将鼠标悬停在 Eclipse 中的标识符上来找出演示编译器认为该类型应该是什么 [2]。如何方便地自动添加这些类型注解?
添加显式类型的目的是“锁定”模板的公共成员的类型,这样如果开发人员将来以导致不兼容类型的方式更改成员的定义,他们除非他们也故意更改类型注释,否则会出现编译时错误。
脚注:
[1] 除非它们覆盖超类型中的成员并且类型应与被覆盖成员的类型相同,这通常是我的代码中覆盖的情况。
[2] 这并不总是正确的;当涉及覆盖超类型成员的成员时,表示编译器似乎很弱。
【问题讨论】:
-
我相信 IntelliJ IDEA 确实有“插入推断类型”重构。
标签: scala types code-generation type-inference