java中的内存地址 我菜鸟刚学 - Java / Java SE
比如说一个person类;
person p=new person();
此时在栈空间和堆空间各开辟了一块内存;
变量p中存放的是他所指向的相应堆内存的地址,也就是说p的值是一个地址,可以求出;
但是如果想知道p本身所代表的栈内存的地址应该怎么求?
java中没有引用传递,C++中有,谁来告诉我一下什么是引用传递?是不是方法中的形参引用的是p所代表的栈内存的地址?
就是封装了的指针
java没有引用传递这是James Gosling那帮人的设计选择。
一些内存方面的问题,初学java 还是不要过度关注了,坏处多于好处。
Java所谓的引用传递 可以简单的理解为 传递的是内存地址
意思就是 传递的是对象的地址 ,我们去修改这个对象,实际上是修改的内存地址中的内容
内存地址中的内容变化,所有指向该内存地址的变量的值都相应改变~~~
甚至可以简单的理解为:引用传递就是 给一个内存地址起了2个名字, 一个是参数的名字 ,一个就是传递进来的原来变量的名字~
java不是C++
坏处多于好处,这啥意思,大爷解释一下
LZ要习惯用java的思维去思考
每天回帖即可获得10分可用分
说好听的精益求精,说不好就是钻牛角尖
java开发最好不要想着c++的指针 java中的引用都是通过对象来实现 把指封装起来了 开发者不需要考虑指针的移向问题!
java中是通过 “值” 来拷贝或传递引用
引用的“值”的内容应该是代表了堆内存的地址
看这个例子:
Java code
相关问答:
请我用FCK上传文件,在本地的windows机上测试可以,但部署到linux服务器上就上传不了文件,上传文件时一直卡在那里。望各位大虾指点,谢谢!
路过,帮你顶一下。。。。。。。。。。。。。。
上传文件的路径问题, ......
java swing 程序如何打包成jar,然后可以通过批处理文件bat直接运行,有没有什么工具直接可以完成这两个工作?
用jar打包,把运行需要的jar拷贝到一个目录,批处理用 start javaw -cp .;其他包路径 运行
用zip ......
使用java在windows7 32位下连接MSSQL。
两台机器,windows7 32位,在控制面板里面全部设置语言和区域选项都english-unitedstates
唯一区别只有在安装SQL server 2008的时候 选择的字符集不一样,
exec sp_helpsor ......
如: @superwaring("unchecked");
这个里面都可以取哪些值啊,还有类似的 @superwaring标签有哪些啊
没用过。。
看jee的api
javax.persistence里
@superwaring("unchecked");只是忽略 ......
insert into [ScholarshipManagement].[dbo].[department] ([department],[specialization] ,[grade]) output inserted.departmentID values(? ,? ,? )
请问大哥们这个sql 语句应该用Java里的那个数据库操作方法? ......