我想创建一些我只能描述为“代码工厂方法”的东西。代码工厂方法
为了避免代码重复,我想创建一个包含要执行的代码的方法,但需要使用“占位符”来表示类型应该去的地方。该方法当然会将这些类型作为参数并将每个类型放在适当的位置。例如:
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