我正在开发一个Java应用程序,在其中我找到了这个类:
public class TipologiaGenerica<K> {
private K codice;
private String descrizione;
public TipologiaGenerica(K codice, String descrizione) {
this.codice = codice;
this.descrizione = descrizione;
}
public K getCodice() {
return codice;
}
public void setCodice(K codice) {
this.codice = codice;
}
public String getDescrizione() {
return descrizione;
}
public void setDescrizione(String descrizione) {
this.descrizione = descrizione;
}
}
正如您所看到的,此类声明为: TipologiaGenerica 和 K 似乎类似于对象类型,可以在创建一个特定的 TipologiaGenerica 对象,并确定其内部字段之一的类型,即:
private K codice;
事实上,在代码的其他地方,我找到了一个 TipologiaGenerica 对象创建:
TipologiaGenerica<String> dataPerLista = new TipologiaGenerica<String>(dataString, dataString);
什么意思?我认为以这种方式创建一个特定的 TipologiaGenerica 对象,其内部 codice 字段是字符串。
我的推理是否正确? Java的这种特定用途的名称是什么?这种构造函数最常见的用途是什么?
答案 0 :(得分:3)
它被称为通用类型。您可以使用它们将某些类/方法概括为类型安全代码“模板”。
查看有关此主题的Oracle教程
答案 1 :(得分:3)
答案 2 :(得分:1)
这在Java中称为泛型。使用这种类型的编程是为了确保类型安全,并且您可以通过插入各种对象类型来重用相同的父类。例如在你的情况下,你做了
TipologiaGenerica<String>
用户可以将相同的类重用于其他类型,例如
TipologiaGenerica<Integer>