您的位置 首页 java

面试官:说说Java中java.lang.Void和void有什么作用和区别?

作者:FserSuN
来源:
 

void 关键字表示函数没有返回结果,是 java 中的一个关键字。java.lang.Void 是一种类型,例如给 Void 引用赋值 null 的代码为 Void nil = null; 。

通过 Void 类的源代码可以看到,Void 类型不可以继承与实例化。

Void 作为函数的返回结果表示函数返回 null (除了 null 不能返回其它类型)。

Void function(int a, int b) { 
 //do something 
 return null; 
 } 
 

泛型 出现之前,Void 一般用于反射之中。例如,下面的代码打印返回类型为 void 的方法名。

泛型出现后,某些场景下会用到 Void 类型。例如 Future 用来保存结果。Future 的 get 方法会返回结果(类型为 T )。

但如果操作并没有返回值呢?这种情况下就可以用 Future 表示。当调用 get 后结果计算完毕则返回后将会返回 null。

另外 Void 也用于无值的 Map 中,例如 Map<T,Void> 这样 map 将具 Set 有一样的功能。

因此当你使用泛型时函数并不需要返回结果或某个对象不需要值时候这是可以使用 java.lang.Void 类型表示。

文章来源:智云一二三科技

文章标题:面试官:说说Java中java.lang.Void和void有什么作用和区别?

文章地址:https://www.zhihuclub.com/171268.shtml

关于作者: 智云科技

热门文章

网站地图