代码工厂方法

时间:2010-10-01 20:08:12

标签: java repeat

我想创建一些我只能描述为“代码工厂方法”的东西。

为了避免代码重复,我想创建一个方法,其中包含要执行的代码,但是“placeholder”应该包含类型。该方法当然会将这些类型作为参数并将每个类型放在适当的位置。例如:

void factory(placeholder1, placeholder2){  
  ArrayList<placeholder1> List = new ArrayList<placeholder1>;  
  Placeholder2 variable;  
}  
factory(String, Integer);

会产生:

ArrayList<String> List = new ArrayList<String>;  
Integer variable;

任何想法我会怎么做?

非常感谢您的帮助。

编辑:感谢您的所有反馈。我正在使用通用方法,它已经工作了一段时间,直到我遇到了我认为有人之前提到过的东西。我想在其中一个通用对象中使用其中一种方法,如:

整数变量= new整数();
variable.isInteger();

似乎我不能使用泛型来做到这一点。可能有解决方法吗?

2 个答案:

答案 0 :(得分:2)

以下是它的外观:

<placeholder1, placeholder2> void factory(){  
  ArrayList<placeholder1> List = new ArrayList<placeholder1>;  
  placeholder2 variable;  
}  
this.<String, Integer> factory();

但我同意亚马,你应该阅读泛型。此外,要小心类型擦除,因为这可能无法完成您所期望的一切。

答案 1 :(得分:2)

看起来你想要某种宏观设施,而不是简单地采用泛型。 Java没有那个。例如,要稍微扩展您的示例,您不能执行以下任何操作:

factory(String, Integer);
List.get(variable);