在java学习中void关键字属于什么类型?
java学习的过程中,平时写代码的时候我们会经常用到void,我们java技术员都知道void代表不返回任何东西,这样理解也是对的,不过这只是它表面意思,那么它的类型有哪些呢,内涵意义又是什么,今天就来说一说void关键字属于什么类型。
1、void关键字到底是什么类型?
java不像是php这些弱类型的语言,java语言是强类型的,意思就是说我们的方法必须要有一个确定类型的返回值,举个例子
public String test(){};
上面这个test方法有一个String类型的返回值,我们也可以返回int等基础类型的。不管返回什么都要返回一个确定的类型。
现在!!!出现了一个问题,我们的方法也可以返回void,那么void肯定也是一种数据类型吧。但是java好像只提供了两种数据类型:基本数据类型和引用数据类型。那这个void到底是什么呢?其实你可以把他理解成一个特殊的数据类型也可以理解成一个方法的修饰符。
2、从Void看void
我们的基础类型好像都有一个封装类,比如int基本类型的封装类是Integer,char基本类型的封装类是Character,void也不例外,他也有一个封装类叫做Void,没错就是把“v”换成了大写的V。你可以这样去理解Void:
其实Void类是一个不可实例化的占位符类,用来保存一个引用代表Java关键字void的Class对象。
Void类型不可以继承和实例化。而且修饰方法时候必须返回null。
下面我们再来研究研究这个Void。
(1)确定类型:Void是一个类,void就是一个基本类型
public class Test {
public static void main(String[] args) {
System.out.println(Void.class);
System.out.println(void.class); }}
//output
//class java.lang.Void
//void
(2)基本使用:必须且只能返回null
public class Test {
//返回void,return可有可无
public void a1() {
return;
} //必须且只能返回null
public Void a2() {
return null;
}
}
(3)使用场景:在反射中确定某个函数的返回类型
public class Test {
// 在这里定义两个方法:
//(1)a方法返回void
//(2)b方法返回int
public void a() {}
public int b() {
return 1;
}
public static void main(String args[]) {
for (Method method : Test.class.getMethods()) {
if (method.getReturnType().equals(Void.TYPE)) {
System.out.println("返回void的方法是:"+method.getName());
}
else if(method.getReturnType().equals(Integer.TYPE)) {
System.out.println("返回int的方法是:"+method.getName());
}
}
}
}//output
//返回void的方法是:main
//返回int的方法是:b
//返回void的方法是:a
(4)使用场景:泛型中使用
Future用来保存结果。Future的get方法返回结果(类型为T)。但如果操作并没有返回值呢?这种情况下就可以用Future表示。当调用get后结果计算完毕则返回后将会返回null。
Void也用于无值的Map中,例如Map<,Void>这样map将具Set有一样的功能。
【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!
Java开发高端课程免费试学
大咖讲师+项目实战全面提升你的职场竞争力
- 海量实战教程
- 1V1答疑解惑
- 行业动态分析
- 大神学习路径图
相关推荐
更多2024-04-08
2024-04-02
达内就业喜报
更多>Java开班时间
-
北京 丨 11月27日
火速抢座 -
上海 丨 11月27日
火速抢座 -
广州 丨 11月27日
火速抢座 -
兰州 丨 11月27日
火速抢座 -
杭州 丨 11月27日
火速抢座 -
南京 丨 11月27日
火速抢座 -
沈阳 丨 11月27日
火速抢座 -
大连 丨 11月27日
火速抢座 -
长春 丨 11月27日
火速抢座 -
哈尔滨 丨 11月27日
火速抢座 -
济南 丨 11月27日
火速抢座 -
青岛 丨 11月27日
火速抢座 -
烟台 丨 11月27日
火速抢座 -
西安 丨 11月27日
火速抢座 -
天津 丨 11月27日
火速抢座 -
石家庄 丨 11月27日
火速抢座 -
保定 丨 11月27日
火速抢座 -
郑州 丨 11月27日
火速抢座 -
合肥 丨 11月27日
火速抢座 -
太原 丨 11月27日
火速抢座 -
苏州 丨 11月27日
火速抢座 -
武汉 丨 11月27日
火速抢座 -
成都 丨 11月27日
火速抢座 -
重庆 丨 11月27日
火速抢座 -
厦门 丨 11月27日
火速抢座 -
福州 丨 11月27日
火速抢座 -
珠海 丨 11月27日
火速抢座 -
南宁 丨 11月27日
火速抢座 -
东莞 丨 11月27日
火速抢座 -
贵阳 丨 11月27日
火速抢座 -
昆明 丨 11月27日
火速抢座 -
洛阳 丨 11月27日
火速抢座 -
临沂 丨 11月27日
火速抢座 -
潍坊 丨 11月27日
火速抢座 -
运城 丨 11月27日
火速抢座 -
呼和浩特丨11月27日
火速抢座 -
长沙 丨 11月27日
火速抢座 -
南昌 丨 11月27日
火速抢座 -
宁波 丨 11月27日
火速抢座 -
深圳 丨 11月27日
火速抢座 -
大庆 丨 11月27日
火速抢座