У меня есть простая иерархия объектов, и я хочу запросить каждый из объектов, используя list (). Проблема в том, что из-за полиморфизма Task.list () возвращает оба экземпляра типа Task и ComplexTask.
class Task {
}
class ComplexTask extends Task {
}
Я понимаю, что могу решить свою проблему, имея общий абстрактный суперкласс или отфильтровав результаты по возвращаемому типу, но мне было интересно, есть ли способ использовать динамические искатели и получать только экземпляры суперкласса.