在 Java 里,void 和“空(null)”是两个不同概念,很多人容易混在一起。下面分别说明它们的作用和含义。
void 是什么?void 是 方法的返回类型,表示:
这个方法不返回任何值
public void sayHello() {
System.out.println("Hello");
}
调用后:
sayHello(); // 只是执行,不接收返回值
void 的作用public void setName(String name) {
this.name = name;
}
告诉调用者:
“我执行完就结束了,你不用等返回值”
void 和 returnvoid 方法可以用 return,但不能返回数据:
public void check(int age) {
if (age < 0) {
return; // 提前结束
}
}
void 不是“空对象”void 是类型关键字void x; // ❌ 编译错误
null 的含义null 表示:
对象引用没有指向任何实例
String s = null;
null 的作用if (user == null) {
// 未登录
}
null 的常见问题s.length(); // NullPointerException
⚠️ null 只能用于引用类型,不能用于基本类型:
int x = null; // ❌
void 和 null 的区别(重点)| 对比项 | void | null |
|---|---|---|
| 本质 | 返回类型 | 对象引用值 |
| 用在哪 | 方法声明 | 变量赋值 |
| 含义 | 不返回值 | 没有对象 |
| 可否赋值 | ❌ | ✅(引用类型) |
❌ “void 就是 null”
✅ 错:void 是不返回,null 是对象为空
❌ “void 方法返回 null”
✅ 错:void 方法根本不返回
void表示方法不返回结果;null表示对象不存在。
如果你愿意,我也可以讲:
void 在反射中的表现Void(大写)类的用途Optional 如何替代 null免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。