Java对象与Java对象的引用
一、主要区别:
1.如果用一个比喻来说的话,对象就是一个电视机,而对象引用便是一个遥控器,对象引用可以指向对象。
2.声明对象引用后存储在栈内存中,创建对象存储在堆内存中。
二、举例
1.首先创建一个FighterPlane类
2.new FighterPlane();//创建一个对象
new FighterPlane();
3.FighterPlane fp;//创建对象引用
FighterPlane fp;
4.FighterPlane fp=new FighterPlane();//将一个对象引用指向一个对象
FighterPlane fp=new FighterPlane();//将一个对象引用指向一个对象
5.也可以被多个对象引用同时指向。如下:
FighterPlane fp,fp1,fp2;
fp=new FighterPlane();
fp1=fp;
fp2=fp1;
Java对象的创建与C++对象的创建
一、java对象创建方式
1.FighterPlane fp;//定义变量,此时没有实际空间
.FighterPlane fp=new FighterPlane();//创建对象,分配空间
二、C++对象创建方式
1.FighterPlane fp;//定义变量并在栈中分配空间
2.FighterPlane *fp=new FighterPlane();//在堆中申请空间,需要手动释放
三、两者区别
1.虽然都是先定义了变量,但内存的处理却不相同。
2.Java中只有在new的时候才会分配空间,而在C++中只要定义变量,便会分配空间
3.Java中如果定义一个引用对象,但没有指向对象,那么它就是一个空引用。而在C++中定义一个变量,却关联着实际的内存空间。