2012-09-21 26 views
0

我有2 java類作爲單獨的java文件說,Class AClass B是否有可能在Java中使用不正確的參數數量來調用另一個類的方法?

A類有一個名爲Method A(1,2)有兩個參數的方法。

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

Class B創建的Class A一個對象,並嘗試不帶參數的訪問Method A

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

這種情況有可能嗎?如果是這樣,我怎麼才能在Java中實現這一點!

+3

不會編譯。您需要使用提供的參數的數量(和類型)進行重載。 –

+0

爲什麼你想調用一個沒有參數的方法? –

+0

我正在寫一個硒web驅動程序測試腳本,其中我需要在滿足一些入口條件後從單個文件中調用不同的類文件。如果我直接從一個類調用一個java文件,那將是非常好的。有沒有這樣的方式? – user1689804

回答

0

您的選擇是發送空值或字符串文字,或使用String ...符號(如果參數是字符串)。

1

不,您不能調用錯誤數量的參數的方法。事實上,它甚至不應該編譯。要麼提供沒有參數的超載或提供默認值。

2

可以定義Java方法來接受任何數量的使用「可變參數」語法參數,例如

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

如果存在,一個可變參數參數必須最後一個參數。

這些是調用此方法的所有有效途徑:

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

你顯然不能叫methodA()與上classA參考無參數,因爲classA根本沒有methodA()不帶任何參數。

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

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

} 

添加一個沒有參數的方法,該方法使用默認值調用2 param方法。

希望它有幫助

+0

不回答問題。他想調用一個參數數量錯誤的方法。 – EJP

+0

「這種情況是否可行?如果是這樣的話,我該如何在Java中實現這一點!」我認爲它回答了這個問題 – 2012-09-21 21:19:05

+0

你還沒有演示調用一個參數個數不正確的方法。您已經演示了使用*正確數量的參數調用方法。 – EJP

相關問題