将 Null-Object 拆箱为基元类型会导致 NullPointerException,好吗?
2022-08-31 17:48:02
这个代码段抛出了一个事实,因为它被解框为基元类型并被调用,对吧?NullPointerException
Long.longValue()
如果你有这样的片段,这甚至很容易看到:
long value = (Long) null;
但是,在像这样的更复杂的情况下,更难获得:NullPointerException
long propertyValue = (Long) obj.getProperty(propertyModel.getName());
那么,Java编译器难道没有可能从中做出一个更舒适的例外吗?我更喜欢带有类似“您正在尝试将空对象转换为基元类型,这无法完成!”IllegalArgumentException
这不是更合适吗?你觉得怎么样?这在运行时甚至可能吗?我们能确定这个演员阵容吗?我还没有看过java字节码。也许它可以用于解决方案。
这个问题可以回答:我想知道是否有可能实现这种行为!