首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java 基础有关问题,书上找不到明确答案

2011-12-06 
java 基础问题,书上找不到明确答案当某个函数f()返回类型为classAAf(){returnnewA()}和Af(){AtempnewA(

java 基础问题,书上找不到明确答案
当某个函数f()返回类型为class   A;

A   f(){
return   new   A();
}


A   f(){
A   temp   =   new   A();
return   temp;
}

这两种写法应该是有区别的吧,第二种返回的是个引用,那么第一种在执行return   new   A()时除了在heap上新建一个对象外,是不是在stack上隐示的建了一个指向A的引用,然后return的是引用??不知自己的理解对不对,望指教解惑。

[解决办法]
-> 在stack上隐示的建了一个指向A的引用
恩,我也是这么理解的。
方法1只是在代码里省略了写对象指向的引用名
2个方法原理应该一样,唯一不同的是,方法1的引用名为匿名
[解决办法]
java有堆内存,也有栈内存。两个函数都是返回的stack上的引用。

热点排行
Bad Request.