为了更好的说明,我们先创建一个简单的类:
class FighterPlanel{
String name="su35";
int MissileNum;
void init(String _name){
String name=_nane;
System.out.println(name);
System.out.println(this.name);
}
}
有了这个模板,我们就可以用来创建对象了 FighterPlanel fp=new FighterPlanel(); 以上的过程我们就称为创建一个对象,其中new FighterPlanel()就是以类FighterPlanel为模板,在堆中分配内存与空间,创建一个该类的对象,并调用类FighterPlanel的构造函数来对该对象进行初始化,左边的FighterPlanel fp是产生一个FighterPlanel的声明,这是并没有对象产生,也不为此对象分配内存与空间,声明被赋予特定的对象后,声明就有了另一个概念————对象的引用。对象的引用形成后通过“=”指向对象;
Java创建对象与C++创建对象比较
Java创建对象FighterPlanel fp语句在C++中就已经相当于创建了一个对象,并且已经在内存中分配了空间,而Java中只是产生了一个对象的声明,必须要通过new关键字来创建对象。C++中通过new关键字创建的对象在堆中,而用“FighterPlanel fp”方式创建的对象在栈中。