【发布时间】:2017-01-14 17:35:57
【问题描述】:
今天我正在准备即将到来的 Java 考试,我遇到了这个问题:
让
A是一个定义如下的类:class A { public void f(Double x) { System.out.println("A.f(Double)"); } public void f(double... x) { System.out.println("A.f(double...)"); } }指令
A a = new A(); a.f(1.0);产生的输出是什么?
答案似乎是A.f(Double),但我不明白为什么。谁能给我一个正确的解释?
【问题讨论】:
-
产生的输出是您的团队负责人说“那是可怕的代码。找到一种编写它的方法,这并不意味着人们必须完全了解 Java 规范。”
标签: java