且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Java千百问_06数据结构(008)_null属于哪种数据类型

更新时间:2022-09-09 10:57:08

1、null属于哪种数据类型

首先,在Java中,null本身不是对象,也不是Objcet的实例。那么他属于哪种数据类型呢? 
了解数据类型看这里:java中数据类型是什么 
java基本数据类型看这里:[java有哪8种基本数据类型3 
具体看下面这个例子:

if (null instanceof java.lang.Object) {
    System.out.println("null属于java.lang.Object类型");
} else {
    System.out.println("null不属于java.lang.Object类型");
}


结果: 
null不属于java.lang.Object类型

结论:null本身虽然能代表一个不确定的对象。但就null本身来说,它不是对象,也不是java.lang.Object的实例。 
null是一种特殊的type,但是你不能声明一个变量为null类型,null type的唯一取值就是null

2、null如何使用

Java中,null是一个关键字,用来标识一个不确定的对象。因此可以将null赋给引用类型变量,但不可以将null赋给基本类型变量。 
比如:

int a = null;//错误
Ojbect o = null;//正确



null可以赋值给任意的类类型或者转化成任意的类类型。在实践中,一般把null当做字面值,这个字面值可以是任意的引用类型。 
了解java字面值看这里:java数据类型的字面值是什么 
Java中,变量都遵循一个原则,先定义,再初始化,才可以使用。我们不能int a后,不给a指定值,就去获取a的值。这条对于引用变量也是适用的。 
例如:

        Connection conn = null;
        try {
            conn = DriverManager.getConnection("url", "user", "password");
        } catch (SQLException e) {
            e.printStackTrace();
        }

        String catalog = conn.getCatalog();



如果刚开始的时候不指定conn = null,则会产生编译错误