JAVA Object...和String方法匹配问题

qq_397131 2020-04-04 08:40:04
为什么传递null时候(Object... obj)会和(String str)都能匹配。
而改成(Object obj)和(String str)时就会优先匹配string呢?
...全文
347 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sotondolphin 2020-04-05
  • 打赏
  • 举报
回复
除了基础类型,任何类型都能返回和接受NULL值
qybao 2020-04-04
  • 打赏
  • 举报
回复
重载方法参数会优先匹配子类(也就是覆盖范围最小),如果找不到再往上继续往上匹配父类(覆盖范围更广)。String是Object的子类,所以会优先匹配String。然而Object[](也就是Object...)它也是Object的子类(任何类都是Object的子类),同样是Object的子类,编译器就不知道先优先哪个了,所以报错了。
纯技术男人 2020-04-04
  • 打赏
  • 举报
回复
编译器原因,这个不需要纠结吧

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧