我想創建一些我只能描述爲「代碼工廠方法」的東西。代碼工廠方法
爲了避免代碼重複,我想創建一個包含要執行的代碼的方法,但需要使用「佔位符」來表示類型應該去的地方。該方法當然會將這些類型作爲參數並將每個類型放在適當的位置。例如:
void factory(placeholder1, placeholder2){
ArrayList<placeholder1> List = new ArrayList<placeholder1>;
Placeholder2 variable;
}
factory(String, Integer);
會產生:
ArrayList<String> List = new ArrayList<String>;
Integer variable;
任何想法如何我會去嗎?
非常感謝您的幫助。
編輯:謝謝你的所有反饋。我採用了通用方法,並且一直工作了一段時間,直到我遇到我相信某人早先提到的東西。我想使用其中一個通用對象之一的方法,如:
Integer variable = new Integer();
variable.isInteger();
看來我不能用泛型來做到這一點。有沒有可能解決這個問題?
您可能會從泛型教程中受益:http://download.oracle.com/javase/tutorial/extra/ generics/index.html – 2010-10-01 20:11:46
在java中,「在多個位置執行代碼以允許代碼重用」的技術是「創建一個包含代碼的方法」。在你的例子中你正在做的是描述利用預編譯器(例如,用C語言)並且在Java語言中不支持的「通過重複使用」技術。 – DwB 2010-10-01 20:17:54
@dwb,是否認爲OP正在尋求Java泛型之外的東西? – 2010-10-01 20:18:34