Что случилось с этим определением метода?Java generics - ошибка компилятора
public static List<T extends MyObject> T find() {
}
Компилятор говорит:
Syntax error, insert ";" to complete MethodDeclaration
Что случилось с этим определением метода?Java generics - ошибка компилятора
public static List<T extends MyObject> T find() {
}
Компилятор говорит:
Syntax error, insert ";" to complete MethodDeclaration
У вас есть два типа возврата нет.
Если вы хотите, чтобы ввести общий тип T
, который был бы
public static <T extends MyObject> List<T> find() {}
Правильное объявление метода будет:
public static <T extends MyObject> List<T> find() { ... }
При создании (статические) общие методы, общий параметр (s) должно быть определено перед возвратным типом, потому что они могут использоваться в обратном типе.
Является ли ваш класс общим? если нет, вы должны обсудить этот метод следующим образом: public public Список T find() ' –
ortis