我在一本书上读到(Bruce Eckel 的《Thinking in Java》,第 4 版,第 47 页) that null
等于'\u000'
。然后我想知道到底是什么'\u000'
实际意思。
根据我的理解,零就是什么都没有或没有任何东西。和'\u000'
与这个定义相矛盾。
任何人都可以澄清这个问题null
and '\u000'
?
语言规范是定义 null 的地方,它说
还有一种特殊的 null 类型,即表达式 null 的类型,它没有名称。由于 null 类型没有名称,因此无法声明 null 类型的变量或强制转换为 null 类型。空引用是空类型表达式的唯一可能值。空引用始终可以转换为任何引用类型。实际上,程序员可以忽略 null 类型,并假装 null 只是一个可以是任何引用类型的特殊文字。--文档链接(第 4.1 节) http://docs.oracle.com/javase/specs/jls/se7/html/jls-4.html
and
null 类型有一个值,即 null 引用,由文字 null 表示,它由 ASCII 字符组成。空文字始终是空类型。--文档链接(第 2.3 节) http://docs.oracle.com/javase/specs/jvms/se5.0/html/Concepts.doc.html
这是一个听起来循环的定义,但其价值null
is the 空引用本身 - 只是另一个指针。空引用的值并不真正相关,并且可能取决于实现者,但可能为零或其他不能与另一个对象地址混淆的值。
这里可能会引起混乱,因为有一个字符值称为空字符有价值\u0000
。这是 char 类型的默认值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)