我真的应该知道这一点,但由于某种原因,我不明白以下内容。
我的抽象类包含以下抽象方法:
protected abstract RuleDTO createRowToBeCloned(RuleDTO ruleDTO);
我还有另一堂课如下:
EvaluationRuleDTO extends from RuleDTO
然后在我的抽象类的子类中,由于“必须覆盖或实现超类型方法”,我有以下不允许的实现:
protected EvaluationRuleDTO createRowToBeCloned(EvaluationRuleDTO ruleDTO) {
但是,允许以下情况:
protected EvaluationRuleDTO createRowToBeCloned(RuleDTO ruleDTO) {
我意识到这可能是一个基本问题,但我有点困惑。为什么我可以在覆盖的方法中返回 RuleDTO 的子类,但我不能传入子类?
谢谢