Java技术分享:void的用法和意义
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java技术分享:void的用法和意义,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2047字,纯文字阅读大概需要3分钟。
内容图文
![Java技术分享:void的用法和意义](/upload/InfoBanner/zyjiaocheng/590/e42e9a990ac249f9b6d9231eb28e8faf.jpg)
本文由小千分享void的用法和意义,void在Java中一般用来表示方法没有返回值。例如:
那么其底层原理到底如何呢?我们来一点点的分析一下。
先来了解一下这个单词的基本含义,根据网络查询结果,如下:
说明void这个单词本身的含义就是空白,空的。在Java语言中,一般也用void这个关键字作为方法的返回值,表示该返回值为空。当定义一个方法没有返回值的时候,就可以使用该关键字,如果在代码中需要返回,可以使用return关键字,例如:
实际上,在Java中,有一个类java.lang.Void对应着void关键字,如下:
从上面的源代码来看,Void其实就是void的封装类型,一般被称为占位符(placeholder)。这里看起来好像有点类似于Integer跟int的关系,但其实并不是这样,Void比较特别:首先它不能实例化;其次它也没有内置的实例,也没有可以用的字面值。
所以声明一个Void变量通常是没有意义的,因为没有可以赋值的实例。所以Void变量唯一能赋值的就null。
Void唯一一个可用的地方就是用来判断反射时的类型。例如:
但是这里也可以使用void.class来替代。所以Void其实就是void的封装。
那么既然void就是表示没有返回值,为什么不能直接不写呢?一定需要一个void占位符呢?我们去研究一下Java的底层,也就是C/C++语言。在C/C++中,void一般有两种使用场景:一是对函数返回的限定;二是对函数参数的限定。第二种用法在Java中不能使用,所以这里我们只说di一种情况。
为什么需要对函数返回进行限定,其实在早期C语言的一些编译器中,如果不写函数的返回值时,可能会被编译器作为返回整型值处理(注,现在的大部分编译器一般会报错或警告)。但是许多程序员却误以为其为void类型。例如:
此处如果程序运行的结果为输出:2 + 3 = 5,这说明不加返回值的函数是int函数,并非void。
而在C++语言中有很严格的类型安全检查,不允许上述情况(指函数不加类型声明)发生。但是编译器可能不会这么认定,譬如在Visual C++6.0中上述add函数的编译无错也无警告且运行正确,所以不能寄希望于编译器会做严格的类型检查。
因此,为了避免不必要的问题发生(编程不规范导致出现的问题),在编写C/C++程序时,对于任何函数都必须一个不漏地指定其类型。如果函数没有返回值,一定要声明为void类型。这既是程序良好可读性的需要,也是编程规范性的要求。
而Java的底层就是使用的C++,也做好了良好的编程要求,所以也就有void的关键字作为占位符。
本文来自千锋教育,转载请注明出处。
内容总结
以上是互联网集市为您收集整理的Java技术分享:void的用法和意义全部内容,希望文章能够帮你解决Java技术分享:void的用法和意义所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。