星空网 > 软件开发 > Java

读书笔记一 Java程序员的基本修养(数组及其内存管理)

1.1 数组初始化

  1.1.1 java数组是静态的

java数组被初始化之后,该数组所占的内存空间、数组长度都是不可变的。

java程序中的数组必须经过初始化才可使用。

数组的初始化有两种方式:

  1) 静态初始化:初始化时由程序员显示指定每个数组元素的初始值,由系统决定数组长度。

  2) 动态初始化:初始化时程序员只指定数组长度,由系统为数组元素分配初始值。

*不要同时使用静态初始化和动态初始化方式。

java的数组变量是一种引用类型的变量,数组变量并不是数组本身,它只是指向对内存中的数组对象。

/**

javaScript这种动态语言的数组长度是可以动态改变的。

**/

  1.1.2 数组一定要初始化吗

数组对象一定要初始化,但对于数组变量来说,它并不需要进行所谓的初始化,只要让数组变量指向一个有效的数组对象,程序即可正常使用该数组变量。

  1.1.3 基本类型数组的初始化

程序直接先为数组分配内存空间,再将数组元素的值存入对应内存里。

所有局部变量都是放在桟内存里保存的,不管其是基本类型的变量,还是引用类型的变量,都是存储在各自的方法栈内存中的;但引用类型的变量所引用的对象(包括数组、普通的java对象)则总是存储在堆内存中。

引用变量本质上只是一个指针,只要程序通过引用变量访问属性。或者通过引用变量来调用方法。该引用变量就会由它所引用的对象代替。

  1.1.4 引用类型数组的初始化

引用类型数组的数组元素依然是引用类型的,因此数组元素里储存的还是引用,它指向另一块内存,这块内存里存储了该引用变量所引起的对象(包括数组和java对象)

1.2 使用数组

java语言不允许直接访问堆内存中的数据,因此无法直接访问堆内存中的数组对象,只用通过数组引用变量来访问数组。

*java语言避免直接访问堆内存中的数据可以保证程序更加健壮,如果程序直接访问并修改堆内存中的数据,可能会破坏内存中的数据完整性,从而导致程序Crash。

  1.2.1 数组元素就是变量

当一个数组初始化完成后,就相当于定义了多个类型相同的变量。

  1.2.2 没有多维数组

所谓多维数组,其实就是数组元素依然是数组的一位数组。

 




原标题:读书笔记一 Java程序员的基本修养(数组及其内存管理)

关键词:JAVA

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

《解析德国vat申报流程》——利用跨税云完成简易规范的vat申报:https://www.kjdsnews.com/a/1310815.html
亚马逊账号vat税号注销后能否继续使用?:https://www.kjdsnews.com/a/1311783.html
亚马逊英国:了解vat税率如何影响您的购物体验:https://www.kjdsnews.com/a/1311784.html
亚马逊英国站:前台价格是否包含vat?:https://www.kjdsnews.com/a/1311785.html
亚马逊英国站无vat税收,销售业务可行吗?:https://www.kjdsnews.com/a/1311786.html
亚马逊英国站vat数据分析报告:https://www.kjdsnews.com/a/1311787.html
湘西游轮六 湘江游轮夜游:https://www.vstour.cn/a/411226.html
携程旅游网折扣优惠最新攻略(携程旅游网更佳折扣优惠):https://www.vstour.cn/a/411227.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流