Java中的Void和void是两个容易混淆的概念,但实际上它们是有着明显的区别的。
Java中的Void和void
Java中的Void和void是两个容易混淆的概念,但实际上它们是有着明显的区别的。
Void
先来看看Void。Void是Java中的一个类,不同于基本类型(如int和double),它不能进行实例化。Void类只有一个实例,即常量Void.TYPE,表示的是空类型。
我们可以用Void类来定义一个返回值类型为void的方法的返回类型。通常当我们使用反射时,需要获取方法的返回类型信息,但是因为void不是一个类,所以如果直接使用getClass()方法获取返回类型信息是无效的。这个时候我们就可以使用Void.TYPE来获取类型信息了。
void
而void是Java中的一种基本类型,表示“没有返回类型”,也就是说该方法不会返回任何值。在方法的定义中,我们可以使用void来声明该方法没有返回值。
我们来看一个简单的示例代码:
public void printHelloWorld() {
System.out.println("Hello, world!");
}
在上面的方法定义中,我们使用void关键字来声明这个方法没有返回值。它只是简单的打印一行“Hello, world!”的提示信息。
Void和void的比较
Void和void之间最大的区别就在于它们的用途。Void可以作为一个参数类型或返回类型,而void只能作为一个方法的返回类型。如下面的例子所示:
public Void doSomething() {
// do something
return null;
}
public void doSomethingElse() {
// do something else
}
在第一个方法中,我们可以使用Void来声明方法的返回类型。在方法体中,我们可以执行任何操作,但是我们必须返回null来与返回类型相匹配。
在第二个方法中,我们使用void来声明方法的返回类型。该方法不返回任何值,只是执行一些操作。
总结
- Void是一个类,表示空类型。
- void是一个基本类型,表示“没有返回类型”。
- Void可以作为一个参数类型或返回类型,而void只能作为方法的返回类型。
参考代码示例:
public class VoidExample {
public static void main(String[] args) {
VoidExample example = new VoidExample();
example.printMessage(null);
example.doSomething();
example.doSomethingElse();
}
public void printMessage(Void v) {
System.out.println("Hello, world!");
}
public Void doSomething() {
System.out.println("Do something...");
return null;
}
public void doSomethingElse() {
System.out.println("Do something else...");
}
}
本文标题为:java.lang.Void 与 void的比较及使用方法介绍


基础教程推荐
- jsp输出所有请求头的名称方法 2023-07-31
- java多线程从入门到精通看这篇就够了 2024-01-19
- Java中String类常用方法使用详解 2023-03-22
- springboot项目启动后执行方法的三种方式 2023-01-12
- SpringBoot Entity中枚举类型详细使用介绍 2023-06-17
- Kotlin 标准函数和静态方法示例详解 2023-06-30
- Java String类的理解及字符串常量池介绍 2023-05-31
- Spring Cloud Stream消息驱动组件使用方法介绍 2023-05-07
- IDEA错误:找不到或无法加载主类的完美解决方法 2023-03-15
- 关于Java8新特性Optional类的详细解读 2023-07-14