通常使用相同的方法 var arg 方法覆盖 Var arg 方法,但在我的代码中使用 var args 覆盖正常方法。
但一般来说,Var args 方法应该只覆盖其他 var args 方法或被其他 var args 方法覆盖,这与 Test.go(String[])
和 A.go(String...)
.
但是我得到了输出T。
class A{
public void go(String...s){
System.out.println("A");
}
}
class Test extends A {
public void go(String[] a){
System.out.println("T");
}
public static void main(String[] args){
A a = new Test();
a.go("dd");
}
}
输出:T
最佳答案
String[]
和 String...
在某些情况下是等效的,因此可以覆盖 go(String... s)
通过go(String[] s)
。这是java中表示数组的方式之一。
关于java - 使用 var-args 覆盖字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55450131/