用于Java Void参考类型?

有一个Java Void(大写的V)引用类型。我见过的唯一情况是将Callables 参数化


final Callable<Void> callable = new Callable<Void>() {

            public Void call() {

                foobar();

                return null;

            }

        };

Java Void引用类型还有其他用途吗?除此以外,还能分配其他任何东西null吗?如果是,您有例子吗?


阿晨1998
浏览 447回答 3
3回答

翻阅古今

您可以使用反射创建Void实例,但是它们对任何事情都没有用。无效是一种指示通用方法不返回任何内容的方法。Constructor<Void> constructor = Void.class.getDeclaredConstructor();constructor.setAccessible(true);Void v = constructor.newInstance();System.out.println("I have a " + v);打印类似I have a java.lang.Void@75636731

FFIVE

所有的原始包装类(Integer,Byte,Boolean,Double,等等)包含在静态到对应的原语类的引用TYPE字段,例如:Integer.TYPE == int.classByte.TYPE == byte.classBoolean.TYPE == boolean.classDouble.TYPE == double.classVoid最初被创建为放置对void类型的引用的地方:Void.TYPE == void.class但是,使用并不会真正获得任何收益Void.TYPE。使用时void.class,很明显您正在使用该void类型进行操作。顺便说一句,我上一次尝试时,BeanShell无法识别void.class,因此您必须在那使用Void.TYPE。分享编辑
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java