在 GitHub 上编辑此页面

实验性

实验性语言功能

所有实验性语言特性都可以在scala.language.experimental包中找到。可以通过导入特性或使用-language编译器标志来启用它们。

实验性语言导入

通常,实验性语言特性可以在实验性范围内导入(参见实验性定义)。如果所有顶层定义都是@experimental,则它们可以在顶层导入。

-experimental编译器标志

此标志启用在项目中使用任何实验性语言特性。它通过向所有顶层定义添加@experimental注释来实现此目的。因此,依赖项目也必须是实验性的。

由特殊编译器选项支持的实验性语言特性

一些仍在研究和开发中的实验性语言特性可以通过特殊的编译器选项启用。这些包括

  • -Yexplicit-nulls. 启用对在类型系统中跟踪空引用的支持。
  • -Ycc. 启用对捕获检查的支持。