为什么将null转换为Object?

我发现一些代码我工作的地方的点null被强制转换Object,因为它是传递给方法。

为什么要这样做?

我知道这个问题涉及重载的方法,并使用类型转换来确定要调用的方法的版本。

但是,如果不执行强制类型转换,Object如果使用空参数调用该方法,那么是否会重选带有其他类型的参数的重载方法呢?那么演员阵容还能完成什么呢?

回答:

如果 执行转换,则将选择 版本。

null可以是type String或type 的空引用Object。因此,如果这两个方法可用,则将String调用该方法。

如果你有方法ObjectInteger

String随后调用与null(无投)将给出一个编译错误,因为IntegerString都是有效的,

(即没有一个其他的一个特例)。在这种情况下,您将 强制转换null以指定要调用的方法。

以上是 为什么将null转换为Object? 的全部内容, 来源链接: utcz.com/qa/410557.html

回到顶部