単純なオブジェクト階層があり、list() を使用して各オブジェクトをクエリしたいと考えています。問題は、ポリモーフィズムのために、Task.list() が Task 型と ComplexTask 型の両方のインスタンスを返すことです。
class Task {
}
class ComplexTask extends Task {
}
共通の抽象スーパークラスを使用するか、返された型に基づいて結果をフィルタリングすることで問題を解決できることを認識していますが、動的ファインダーを使用してスーパークラス インスタンスのみを取得する方法があるかどうか疑問に思っていました。