【发布时间】:2023-03-28 16:41:02
【问题描述】:
如果我重载一个方法并决定给一个可选参数:
public static void method(int a, double b, String... c){
//method
}
public static void method(int a, double b, string c, string d){
//method
}
public static void main(String[] args){
method.(int, double, string, string);
}
省略号表示第一种方法的零个或多个字符串,第二种方法采用两个字符串。如果我调用方法并输入两个字符串,会调用哪个方法?
编辑:我一直在对此进行测试,但是在参数之前但在点之后搜索标识符时,我不断收到编译器错误。作为(非常)Java 新手,什么是标识符,它如何应用于这些方法?
【问题讨论】:
-
多写两行代码然后自己执行到底有多难。
-
您知道您可以在 IDE 中编写此代码并测试结果,对吧?
-
仅仅因为你可以测试这个,我认为它不值得这么多反对。程序员将来可能会发现这很有用,因为用谷歌搜索比测试更快。
-
@bcsb1001 我实际上同意反对票,因为我没有测试然后问为什么它会这样。在没有提供任何先前资源的情况下,我问得太快了。如果人们觉得它有用,他们会投票。
-
至于您的编译器错误,请从您的方法调用中删除点。
标签: java overloading