为什么将null转换为Object?
我发现一些代码我工作的地方的点null
被强制转换Object
,因为它是传递给方法。
为什么要这样做?
我知道这个问题涉及重载的方法,并使用类型转换来确定要调用的方法的版本。
但是,如果不执行强制类型转换,Object
如果使用空参数调用该方法,那么是否会重选带有其他类型的参数的重载方法呢?那么演员阵容还能完成什么呢?
回答:
如果 执行转换,则将选择 版本。
null
可以是type String
或type 的空引用Object
。因此,如果这两个方法可用,则将String
调用该方法。
如果你有方法Object
,Integer
String
随后调用与null
(无投)将给出一个编译错误,因为Integer
和String
都是有效的,
(即没有一个其他的一个特例)。在这种情况下,您将 强制转换null
以指定要调用的方法。
以上是 为什么将null转换为Object? 的全部内容, 来源链接: utcz.com/qa/410557.html