Проблема захвата подстановочных знаков в Java 21 и универсальных типахJAVA

Программисты JAVA общаются здесь
Anonymous
Проблема захвата подстановочных знаков в Java 21 и универсальных типах

Сообщение Anonymous »

Я работаю над небольшим побочным проектом, в котором используется очень простой шаблон обработчика команд для отправки классов команд в классы-обработчики. Я имею опыт работы с C#, и у меня возникла проблема с системой обобщений в Java, которая превосходит мои текущие знания. Я считаю, что это проблема, связанная со стиранием типов, но я не уверен. Код следующий:

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

public interface Args {}

public abstract class Command {}

public enum CommandName
{
help,
parse,
count,
transcribe
}

public record CountArgs(File sequenceFile) implements Args {}

public class CountCommand extends Command {}

public abstract class CommandHandler неприменим для аргументов (Command)Java(67108979)

Я не знаю, как это решить. Нужен ли мне метод моста для правильного вызова handle? Являются ли мои определения общего типа неверными? Любые советы о том, как реструктурировать решение, чтобы оно работало должным образом, будут приняты с благодарностью. 

Подробнее здесь: [url]https://stackoverflow.com/questions/79856858/java-21-and-generic-types-wildcard-capture-issue[/url]

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