java - 泛型。创建 2 个对象并将它们添加到另一个对象

标签 java generics

我希望有人能引导我朝正确的方向前进。我必须创建 2 个 Dog 对象,然后将它们作为 myFirstPet 和 mySecondPet 添加到 MyPets 对象中。我有多个类,例如 Animal、Dog、Greyhound,它们实现了 Comparable 接口(interface)和 MyPets(泛型类)。

我的宠物类:

public class MyPets<T> {

    private T myFirstPet;
    private T mySecondPet;

    public void setMyFirstPet(T myFirstPet) {
        this.myFirstPet = myFirstPet;
    }

    public void setMySecondPet(T mySecondPet) {
        this.mySecondPet = mySecondPet;
    }

    public T getMyFirstPet(){
        return myFirstPet;
    }

    public T getMySecondPet(){
        return mySecondPet;
    }

    @Override
    public String toString() {
        return "My first pet " + myFirstPet + ", my second pet "
                + mySecondPet;
    }
}

TestClass 类主要有:

public class TestClass {

    public static void main(String[] args) {

        MyPets<Dog> dog = new MyPets();
        MyPets<Dog> doggie = new MyPets();

    }
}

我不确定在这里需要做什么才能将 2 个狗对象添加到 MyPets 对象中,作为 myFirstPet 和 mySecondPet。我什至不知道我是否正确创建了 Dog 对象。

最佳答案

小心...您实际上还没有创建任何 Dog 对象;相反,您创建了两个 MyPets 对象。但由于每个 MyPets 本身实际上只是其他 Animal 对象的列表,因此处理 的实例是没有意义的MyPets 作为

您的代码实际上应该类似于:

Dog dog = new Dog(/* use your constructor for Dog here... */);
Dog doggie = new Dog(/* use your constructor for Dog here... */);
MyPets<Dog> dogList = new MyPets<Dog>();
//Since this appears to be homework I'll let you figure out what to do here...    

关于java - 泛型。创建 2 个对象并将它们添加到另一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19640876/

相关文章:

java - 使用退出按钮执行功能

java - 如何从 GRAILS 中的 src/java 访问域类?

java - 将 List<Subclass> 传递给需要 List<SuperClass> 的方法

c# - 为什么 IEnumerator<T> 继承自 IDisposable 而非泛型 IEnumerator 却没有?

java - onCreate() 中的 ClassCastException

java - AWS Fargate 主机名不可用?

java - 通过JAVA获取mongodb中的currentdate

c# - 如何在 C# 接口(interface)中使用泛型类型参数

scala - 如何匹配自定义泛型类型?

c# - 通过扩展类将 Entity Framework 对象变成泛型类?