There is a Java Void
-- uppercase V-- reference type. The only situation I have ever seen it used is to parameterize Callable
s
final Callable<Void> callable = new Callable<Void>() {
public Void call() {
foobar();
return null;
}
};
Are there any other uses for the Java Void
reference type? Can it ever be assigned anything other than null
? If yes, do you have examples?
Void
has become convention for a generic argument that you are not interested in. There is no reason why you should use any other non-instantiable type, such as System
.
It is also often used in for example Map
values (although Collections.newSetFromMap
uses Boolean
as maps don't have to accept null
values) and java.security.PrivilegedAction
.
I wrote a weblog entry on Void
a few years back.