关闭

java和c、c++中数组的区别

标签: java
424人阅读 评论(0) 收藏 举报
分类:

在c、c++中使用数组是很危险的,因为c和c++中的数组就是内存块。如果一个程序要访问其自身内存块之外的数组,或在数组初始化之前使用内存(程序中常见的错误),就会产生难以预料的后果。


java的主要目标之一就是安全性。java确保数组会被初始化,而且不能再它的范围之外被访问。这种范围检查,是以每个数组上少量的内存开销及运行时的下标检查为代价的。当由此换来的是安全性和效率的提高,因此付出的代价是值得的。


当创建一个数组对象时,实际上就是创建了一个引用数组,并且每个应用会自动被初始化为一个特定值,该值拥有自己的固定值null。一旦java看到null,就知道这个引用还没有指向某个对象。如果试图使用一个还是null的引用,在运行时将会报错。因此,常犯的数组错误在java中就可以避免。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:135719次
    • 积分:2019
    • 等级:
    • 排名:第19197名
    • 原创:68篇
    • 转载:65篇
    • 译文:0篇
    • 评论:33条
    文章分类
    最新评论