The*_* do 14 java pointers nullpointerexception
为什么我得到一个异常调用,NullPointerException
如果在Java中没有指针这样的概念?
pax*_*blo 10
Java 中没有通用指针,您可以通过添加和减去C中的任意值来轻松操作.这可能会导致那些未使用它们的各种问题.
但是,Java仍然需要区分对象和"无对象".它只是异常的名称,这意味着您正在尝试使用后面没有支持对象的对象引用.
您可以轻松地将其称为NoObjectException
或者DereferenceException
,或者无数其他名称之一,以最大限度地减少人们认为Java具有通用指针的可能性.
但是NullPointerException
语言创建者选择了什么,可能是因为他们习惯于用C和/或C++编码.
是的,这是我在学习Java LOL时学到的第一个烦人的事情之一.它应该被称为NullReferenceException,NoObjectException或DereferenceException,如paxdiablo所提到的那样.引用甚至不必在内部表示为指针,您不必关心."大多数虚拟机包括Sun使用的句柄,而不是指针.句柄是一个指针指针,所以谁知道他们是如何使用它的呢?" 哦,微软的Java VM确实使用指针而不是句柄,所以去看看.
归档时间: |
|
查看次数: |
1687 次 |
最近记录: |