相关疑难解决方法(0)

如何创建多个子类级别,以便参数属于子类?

在这个StackOverFlow问题之后,让我们说我想扩展到另一个级别的子类,比如Mallards,我该怎么做?

public abstract class Animal <A extends Animal<A>>
{
    public abstract A copyAnimal(A animal);
}

public class Duck extends Animal<Duck>
{
    @Override
    public Duck copyAnimal(Duck duck)
    {
        return copyOfDuck;
    }
}

class Mallard extends Duck<Mallard>
{
    public Mallard copyAnimal(Mallard mallard)
    {
        return copyOfMallard;
    }   
}
Run Code Online (Sandbox Code Playgroud)

一切都适用于Duck子类,但它对于Mallard子类来说是失败的.如何使用未确定数量的子类进行设置?

java generics polymorphism

0
推荐指数
1
解决办法
37
查看次数

标签 统计

generics ×1

java ×1

polymorphism ×1