【发布时间】:2011-06-07 22:00:35
【问题描述】:
我不确定我是否很好地传达了这个问题,并且我找不到更好的方法来做到这一点,因为我对 java 还是很陌生。
如果我有课,我相信最好的方式是举例说明
public abstract class Genome
{
abstract public Genome randomize();
abstract public Genome mutate();
abstract public Genome crossOver(Genome genome);
}
我能否确保它的子类总是使用泛型实现
public class GenomeSubclass extends Genome
{
public GenomeSubclass randomize();
// etc...
}
而不是合约中提供的抽象方法?
【问题讨论】:
-
您的帖子中没有显示任何通用代码。您显示的内容称为“协变返回”,其中子类方法覆盖可以返回被覆盖方法返回类型的子类。不知道你在问什么。
-
他希望方法具有与当前扩展抽象类的类相同的返回类型。嗯,我想这就是他想要的。
-
致命:谢谢我的意思。
-
Jim:我没有展示,因为这正是我要寻找的答案。
标签: java generics subclassing