Позвольте мне сказать, что есть абстрактный класс, который выглядит какродовой завод конвенции
abstract class Parent<V> {
protected static <T extends Parent<V>, V> T newInstance(
final Class<T> type, final V value) {
// ...
}
}
В следующем классе ребенка
class Child extends Parent<XXX> {
public static Child newInstance1(final XXX value) {
// ...
}
public static Parent<XXX> newInstance2(final XXX value) {
// ...
}
}
Какой из них предпочтительнее? newInstance1
или newInstancw2
?
Что такое E? это какой-то конкретный существующий класс или общая переменная типа? –
Уважаемый @EyalSchneider, я обновил источник. Прости. –