gpt4 book ai didi

java - 为什么在 Java 中允许初始化对 Null 的引用?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:05:32 25 4
gpt4 key购买 nike

在以下使用 JDBC 的示例中(尽管这个问题并不特定于 JDBC):

Connection conn = null;

try
{
..... Do the normal JDBC thing here ....
}
catch(SQLException se)
{
if(conn != null)
{
conn.close();
}
}

如果我没有将 conn 初始化为 null 那么编译器会提示说在 catch block 中我不能使用一个没有的引用被初始化。

Java 默认将对象引用初始化为 null 那么为什么我需要显式地将其初始化为 null。如果编译器不喜欢以 null 开头的引用的原始值,为什么它甚至接受我的显式初始化?

注意:我使用 Eclipse Luna 作为我的 IDE。

最佳答案

它只会在类范围内将变量初始化为 null。您处于方法范围内,因此您必须显式地将变量初始化为 null。

如果变量是在类级别定义的,那么它将被初始化为 null。

关于java - 为什么在 Java 中允许初始化对 Null 的引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26853753/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com