私は本当にこれを知っているべきですが、なぜか私は次のことを理解していません。
私の抽象クラスには、次の抽象メソッドが含まれています。
protected abstract RuleDTO createRowToBeCloned(RuleDTO ruleDTO);
次のような別のクラスもあります。
EvaluationRuleDTO extends from RuleDTO
次に、抽象クラスのサブクラスに、「スーパータイプメソッドをオーバーライドまたは実装する必要がある」ために許可されていない次の実装があります。
protected EvaluationRuleDTO createRowToBeCloned(EvaluationRuleDTO ruleDTO) {
ただし、次のことが許可されます。
protected EvaluationRuleDTO createRowToBeCloned(RuleDTO ruleDTO) {
これはおそらく基本的な質問だと思いますが、少し戸惑っています。オーバーライドされたメソッドでRuleDTOのサブクラスを返すことができるのに、サブクラスを渡すことができないのはなぜですか?
ありがとう