相关疑难解决方法(0)

编译器错误:引用调用模糊

情况1

static void call(Integer i) {
    System.out.println("hi" + i);
}

static void call(int i) {
    System.out.println("hello" + i);
}

public static void main(String... args) {
    call(10);
}
Run Code Online (Sandbox Code Playgroud)

案例1的输出:hello10

案例2

static void call(Integer... i) {
    System.out.println("hi" + i);
}

static void call(int... i) {
    System.out.println("hello" + i);
}

public static void main(String... args) {
    call(10);
}
Run Code Online (Sandbox Code Playgroud)

显示编译错误reference to call ambiguous.但是,我无法理解.为什么?但是,当我评论出任何call()方法时Case 2,它的工作正常.任何人都可以帮助我理解,这里发生了什么?

java methods polymorphism boxing java-7

24
推荐指数
1
解决办法
2万
查看次数

标签 统计

boxing ×1

java ×1

java-7 ×1

methods ×1

polymorphism ×1