Java与C++的区别

1、未经初始化的对象变量不是一直对象,实际上也没有引用对象。
2、一个对象并没有实际包含一个对象,而仅仅是引用一个对象。任何对象变量的值都是对存储在另外一个地方的一个对象的引用。new操作的返回值也是一个引用。
3、Java对象和C++引用的区别:C++中没有空引用,并且引用也不能被赋值。java的对象变量与C++的对象指针比较相似。
4、所有的java对象都存储在堆中。当一个对象包含另一个对象变量时,这个变量依然包含着指向另一个堆变量的指针。
5、C++中,指针容易造成内存泄露。在Java中,如果使用一个没有初始化的指针,运行系统会产生一个运行时错误,而不是生成随机结果。而且内存管理有垃圾收集器处理。
6、java与C++相同,具有一些基本类型。然而与C++不同的是这些基本类型所占存储空间的大小是固定的。这样的话更具可移植性。
7、java确保数组会被初始化,而且不能在它的范围之外被访问。
8、由new创建的对象,只要需要就会一直保留下去。java有一个垃圾回收器,用来见识new创建的所有对象,并辨别哪些不会再被引用,随后释放这些对象的内存空间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值