首页 > 编程语言 > 详细

有关于java对象的讨论

时间:2020-02-29 01:14:33      阅读:59      评论:0      收藏:0      [点我收藏+]

在java中 有一个与C++明显的不同。
String AK = new String();
声明 Ak 是一个新对象。在存储区域上是不同的。C++中这样写 String Ak;就可以了,会主动赋予一个随机值。 java中 不允许没有初始化的变量 ,在程序中会报错。并且仅仅这样声明占用的空间是栈,无法调用对象方法(c++中函数)。声明对象后占用的空间是堆,并且可以调用String()对象的方法。
在列举一个看到的例子;
当我们用String str = ‘str‘时,会先到内存中找有没有‘str‘这个对象,如果没有就new String(‘str‘);如果有那么就用str指向该对象就可以了。
用String str = new String(‘str‘)时会直接在内存中new一个‘str‘对象,不管内存中有没有。如果内存中已经有‘str‘这个对象了,那么就存在两个。

有关于java对象的讨论

原文:https://www.cnblogs.com/sk244/p/12380823.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!