我想在同一个实例中添加不同的类(例如:Dog,Cat,Mouse)到一个数组(例如:数组动物)。
示例代码:
Array<Animal> animals = new Array<>();
Cat cat = new Cat();
Dog dog = new Dog();
animals.add(cat);
animals.add(dog);
是否:animals = new Array<>()
创建新的Dog,Cat等对象?
因为我不打算同一个类的两个对象,只是一个引用
的数组
这些课程
答案 0 :(得分:1)
这个答案假设Array<T>
是一个简单的数组,其功能类似于标准集合类型。
不,它只是分配一块内存,一旦你创建它们就可以指向你的对象。
Array<Animal> animals = new Array<>();
将为您找到一块内存。当你这样做时:
Cat cat = new Cat();
您将创建指向对象cat
的指针。当你这样做时:
animals.add(cat);
您将把指针放在数组已分配的内存块的第一个位置。
答案 1 :(得分:0)
什么是“Array<Animal>
”?在java中,它可以是Animal[]
或List<Animal>
之类的东西。在这两种情况下,都不会创建Animal对象,只是稍后要存储它们。