Если я объявляю обобщенный класс как что-то вроде
public class Driver<V extends Car>
, где Car - это интерфейс.
Затем я использую это с чем-то вроде этого:
Driver<?> driver = new Driver<Chevrolet>();
Я не хочу указывать конкретную реализацию автомобиля в качестве универсального.
Почему я не могу вызвать методы, реализованные в драйвере, который использует универсальный класс в качестве параметра?
Например, если у Driver есть метод, такой как
public void drive(V vehicle)
Это не позволяет мне вызывать это с моим экземпляром драйвера (Driver<?>
).