为什么JDK中存在Void包装类?

17 java void

可能重复:
Java Void引用类型的用途?

Void现实世界中问题的真正用法是什么?在哪种情况下我们可以使用这个类?

mrb*_*mrb 14

如果你有一个对象(比如一个ExecutorService)要求你提供一个Callable<T>对象,你可以传递一个对象Callable<Void>来表示你的Callable没有返回任何东西.Callable<T>必须在某种类型上进行参数化,因此Void提供表示缺少类型.


Kum*_*tra 12

-与其他包装Void类不同,类本身不存储类型的值,void因此不是真正本质的包装器.

-Void根据javadoc存在的类是因为有时我们可能需要将void关键字表示为对象.

-但同时我们不能使用new运算符创建Void类的实例.这是因为Void中的构造函数已声明为private.而且Void类是一个final类,这意味着我们无法继承这个类.

-因此,Void类的存在唯一的目的是反射,我们可以将方法的返回类型作为void.


Ily*_*lya 7

Voidclass用于Java反射.
请参阅Method#getReturnType