为什么`System.out.println(null);`给出“对于类型PrintStream错误,方法println(char [])不明确”?

为什么`System.out.println(null);`给出“对于类型PrintStream错误,方法println(char [])不明确”?,第1张

为什么`System.out.println(null);`给出“对于类型PrintStream错误,方法println(char [])不明确”?

有3种

println
的方法
PrintStream
接受一个引用类型- ,
println(char x[])
,。
println(Stringx)``println(Object x)

通过时

null
,所有3个都适用。方法重载规则更喜欢具有最特定参数类型的方法,因此
println(Object x)
选择

然后,编译器不能在前两个-

println(char x[])
println(String x)
- 之间进行选择,因为
String
它不比-
更具体
char[]
,反之亦然。

如果要选择特定的方法,请将null强制转换为所需的类型。

例如 :

System.out.println((String)null);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5429306.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存