我创建了一个没有参数的通用方法,例如:
private <T> TableCell<T> createTableCell(){
return new TableCell<T>();
}
那么,在我的程序中,如何为具体类型调用这个方法呢?
通常,类型是推断出来的,但您可以使用以下语法指定类型:
注意:您的方法定义中有错误 - 它没有返回类型:
private <T> TableCell<T> createTableCell(){
return new TableCell<T>();
}
这是你如何称呼它的方法:
TableCell<SomeType> tableCell = myObject.<SomeType>createTableCell();
如果您的方法不访问任何字段,请考虑将其设为static
方法,您可以将其称为:
TableCell<SomeType> tableCell = MyClass.<SomeType>createTableCell();
顺便说一句,当您使用这种语法时,许多人会惊叹于您的“精英”——这是一种不常见的语法。
因为无法从上下文中推断出类型(当您调用方法时),所以您必须在以以下方式调用时指定它:
obj.<MyType>createTableCell()
whereobj
是包含该方法的类/类型的对象。
您可以像调用其中的构造函数一样调用此方法:createTableCell<TypeName>()
.