У меня есть класс ListCreator<T>
и статический метод collectFrom()
, который производит экземпляр этого класса. collectFrom()
имеет параметр List l
, и я хотел бы параметризовать возвращенный экземпляр ListCreator
того же типа, что и указанный List
.Как параметризовать объект тем же типом, что и данный объект?
В идеале я хотел бы что-то вроде этого:
public static ListCreator<T> collectFrom(List<T> l) {
return new ListCreator<T>(l);
}
, но это невозможно, так что я застрял с этим:
public class ListCreator<T> {
List<T> l;
public ListCreator(List<T> l) {
this.l = l;
}
public static ListCreator collectFrom(List l) {
return new ListCreator(l);
}
}
Есть ли лучшее решение?
Он имеет значение для конструктора и переменной-члена. –
@JBNizet Да, я имел в виду метод. Спасибо, что указали это. – manouti