是否可以从Java中使用不正确数量的参数调用另一个类的方法?

时间:2012-09-21 20:19:13

标签: java

我有2个java类作为单独的java文件说,Class AClass B

A类有一个名为Method A(1,2)的方法,有2个参数。

Class A(){
    Method A(1,2)
}

Class B创建了一个Class A的对象,并尝试访问没有参数的Method A

Class B(){
    A a = new A()
    a.Method A()
}

这种情况可能吗?如果是这样,我怎么能用Java实现呢!

5 个答案:

答案 0 :(得分:2)

您可以使用“varargs”语法定义java方法以接受任意数量的参数,例如

public void myMethod(String... s) {
    // s is an array String[]
}

如果存在,则varargs参数必须是最后一个参数。

这些都是调用此方法的有效方法:

myMethod(); // in this case the parameter is not null - it's an empty array
myMethod("foo");
myMethod("foo", "bar");

答案 1 :(得分:1)

否则您无法使用错误数量的参数调用方法。实际上它甚至不应该编译。提供没有参数的重载或提供默认值。

答案 2 :(得分:0)

您的选择是发送空值或字符串文字,或使用String ...表示法(如果参数是字符串)。

答案 3 :(得分:0)

您显然无法在methodA()引用上调用classA且没有参数,因为classA根本没有methodA()没有参数。

答案 4 :(得分:0)

Class A(){
   Method A(){
       return Method A(1,2);
   }

   Method A(1,2){
      ...
   }

}

添加一个没有参数的方法,它使用默认值调用2参数方法。

希望有所帮助