Как избежать предупреждения "непроверенные или небезопасные операции" в случае универсального метода

Я хотел бы избежать сообщения "непроверенные или небезопасные операции" от компилятора Java, но я понятия не имею, как это сделать, когда у меня есть универсальный метод, и я хотел бы вернуть значения из универсальной карты. Значения карты должны быть того же общего типа, что и общий метод, но я не мог понять, как этого добиться.

Я создал проект bitbucket, чтобы показать проблему: https://bitbucket.org/ren-hoek/avoidsuppresswarning/overview

Вы можете проверить следующий фрагмент как краткий обзор, но лучше всего клонировать проект и проверить его там.

public class VehicleServiceImplementation implements VehicleService {

private static Map<Long, VehicleResult> resultMap = new HashMap<Long, VehicleResult>();

static {
    resultMap.put(5L, new VehicleResult<Car>(new Car(5L)));
}

public <CAR extends Car> VehicleResult<CAR> retrieve(final CarRequest request) {
    return resultMap.get(request.getId());
}}

Обратите внимание, что у меня нет доступа к самому интерфейсу, поэтому я не могу изменить его подпись

Обратите внимание, что речь идет не о том, как обращаться с методами, возвращающими Object, а о том, как обращаться с общими методами.

0 ответов

Другие вопросы по тегам