我刚学会了如何使用泛型,我理解了语法。但是,我想知道何时使用它们,以便我不仅仅因为我可以将乱码扔到任何地方。您可以使用以下示例来帮助解释:
//First I have:
public class GenerateTemplate<T> {
public GenerateTemplate(T template) {
this.template = template;
}
private T template;
public T getTemplate() {
return Template;
}
}
//Second i have:
public abstract class TemplateGenerator {
public abstract String templateName();
public void readTemplate(){
System.out.println("Reading Template);
}
}
//Third i have:
public class ExcelTemplate extends TemplateGenerator {
@Override
public String templateName() {
System.out.println("I am excel template);
return null;
}
//下面的主要工作在两种情况下都很有效,但那里最好的做法是什么?为什么?
public static void main(String[] args) {
final TemplateGenerator templateGenerator = new ExcelTemplate ();
templateGenerator.readTemplate();
ExcelTemplate template = new ExcelTemplate();
final GenerateTemplate<ExcelTemplate> generatorTemplate = new
GenerateTemplate(template);
generatorTemplate.getTemplate().readTemplate();
}