Java null 总结

作者: Little丶Jerry | 来源:发表于2018-07-11 19:22 被阅读10次
    问:简单谈谈你对 Java 中 null 的理解与认识?

    答:

    • null 是 java 的关键字。

    • null 是 java 中引用类型的默认值。

    • null 既不是对象也不是一种类型,仅是一种特殊的值,我们可以将其赋予任何引用类型,也可以将 null 强转化成任何类型。

    • null 可以赋值给引用变量,但不能赋给基本类型变量,否则编译会报错。但是如果将 null 赋值给包装类型,然后将包装类型赋给各自的基本类型,编译器不会报,但在运行时会抛出空指针异常,这是因为 Java中 自动拆箱导致的。

    • instanceof 中使用带有 null 值的引用类型变量将会返回 false,这是 instanceof 操作符一个很重要的特性。

    • 不能使用值为 null 的引用类型变量来调用对象的非静态方法(NPE 问题),但是可以使用值为 null 的引用类型变量来调用对象的静态方法,因为静态方法使用静态绑定,编译时就决定了,所以运行时不会抛出空指针异常。

    • 可以使用 == 或 != 操作符来比较 null 值,但是不能使用其他操作符或者逻辑操作(譬如 < 或 > 等)来比较 null 值(会发生 NPE 问题),在 Java 中 null == null 会返回 true。

    本文参考自 Java 中 null 相关的题目解析

    相关文章

      网友评论

        本文标题:Java null 总结

        本文链接:https://www.haomeiwen.com/subject/pskkpftx.html