我有一個方法,我想在不同的場合使用。這意味着,我要使用的方法,但每次傳遞不同數量的參數:如何避免創建大量重載方法?
考慮這個例子:
public checkInput(Object a, Object b, Object c, Object d) {
a.someMethod();
b.someMethod();
c.someMethod();
d.someMethod();
}
現在,當我通過在4個參數我只能用這種方法checkInput(...)
。但是,有些情況下我只能傳遞兩個參數。
如果我想調用像這樣的方法checkInput(a, b, null, null);
我會得到一個NullPointerException
。
所以現在我想知道,我將不得不使用在這種情況下,過載,這意味着我將不得不創建
public checkInput(Object a) {
a.someMethod();
}
public checkInput(Object a, Object b) {
a.someMethod();
b.someMethod();
}
...等等。
我真的不明白你的答案。你能否多描述一下? – user2426316
我不知道這個'公共checkInput(Object ... args)'行應該做什麼。你能把它變成真正的Java嗎? – user2426316
@ user2426316。這是真正的Java。請點擊我答案中的鏈接。此外,搜索可變參數,你會得到一些有用的鏈接相關的這個概念。 –