Java对象数组的使用

Java中的类属于引用数据类型,准确来说引用数据类型定义的不是类型的对象,而是类型对象的引用。引用的使用类似于C++中的指针。

Java声明类对象的引用,并赋初值:Person p = null;

C++定义类对象的指针,并赋初值:Person* p = NULL;

在C++中类对象的指针p并不是Person类的对象,它只是存放了一个Person类对象在内存中的起始地址。Java中类对象的引用和C++中类对象指针意义相同,类对象的引用本身的地址不代表对象的起始地址,但类对象的引用中存储了对象在内存中的起始地址。

在C++定义类对象的指针数组,代码可以这样写:

Person* p[3];
p[0] = new Person();
p[1] = new Person();
p[2] = new Person();

在Java中定义类对象的引用数组,代码可以这样写:

Person p[] = new Person[3];
p[0] = new Person();
p[1] = new Person();
p[2] = new Person();

看上面的两个例子就会发现,在Java中定义类对象的引用数组和在C++中定义类对象的指针数组有很大的相似性。注意:在Java中,“new Person[3]” 并不是在内存中分配了3个对象,它只是分配了3个对象的引用,类似于C++中3个对象的指针。

原文地址:https://www.cnblogs.com/xiaojihua20/p/4126353.html