4
注意如何Integer.TYPE
和Integer.class
都是Class<Integer>
,Double.TYPE
和Double.class
都是Class<Double>
,并使用自动装箱如何向int
和Integer
以及double
和Double
之间的相互转换。问题是void
是否适用:Void.TYPE
和Void.class
都是Class<Void>
,但是您可以在void
和Void
之间“转换”吗?自动装箱和无效
为了把它以另一种方式,假设你有这样的接口:
public interface Foo<T> {
public T doSomething();
}
实施Foo<Integer>
类是自由地实施其doSomething()
返回int
为int
将被装箱。 Foo<Double>
同样返回double
。因此,对于Foo<Void>
:由于允许的唯一值Void
为空(除非您进行奇怪的反思,这很少合理),这是否意味着您可以省略强制性return null
,有效地“装箱”Void
?