将八个包装类(java.lang.Integer、java.lang.Double等)迁移为具有optional构造函数的值类,提高性能。
使用 --enable-preview编译时和运行时标志启用。
八个包装类如下:
- java.lang.Boolean
- java.lang.Character
- java.lang.Byte
- java.lang.Short
- java.lang.Integer
- java.lang.Long
- java.lang.Float
- java.lang.Double
编译器和引导类加载器使用特殊逻辑来定位这些类文件;当启用预览功能时,会找到这些类的修改版本。
修改后的包装器类是value类并具有optional 构造函数。这最大限度地减少了包装的开销——它们的编码本质上与它们包含的原始值的编码相同。
int i = 12; |
在运行时,装箱会在成员访问发生之前应用于原始值。
原始类型的名称也可用于字段访问、方法调用或方法引用。
int max = int.MAX_VALUE; |
原始类型可以用作类型参数
interface Foo<T> { |
详细点击标题