Как вывести параметр общего типа из другого в Java?JAVA

Программисты JAVA общаются здесь
Anonymous
Как вывести параметр общего типа из другого в Java?

Сообщение Anonymous »

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

Код: Выделить всё

public abstract class GameScreen extends MPScreen {
public G getGameInstance() {
// ...
}
public C getController() {
// ...
}
// ...
}

Код: Выделить всё

Controller
— это универсальный тип, принимающий тип Game, например:

Код: Выделить всё

public abstract class Controller {
// ...
}
Мне бы хотелось избежать указания второго параметра типа () напрямую, поскольку он уже определен C. Однако я по-прежнему хочу использовать G в качестве типа возвращаемого значения в некоторых методах (например, getGameInstance()).
Я попытался переписать класс следующим образом:

Код: Выделить всё

public abstract class GameScreen

Подробнее здесь: [url]https://stackoverflow.com/questions/79016797/how-to-infer-a-generic-type-parameter-from-another-in-java[/url]

Вернуться в «JAVA»