Как вывести параметр общего типа из другого в 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]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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