java基础--------------数组

一。数组初始化

1.1 java数组是静态的

     java数组变量是以一种引用类型的变量,数组变量并不是数组本身,它只是指向堆内存中的数组的对象。所以,可以改变一个数组变量所引用的数据,可造成数组长度可变的假象。

1.1.2 数组一定要初始化吗?

  数组变量:只是一个引用变量,通常存放在栈内存(也可存放在堆内存

  数组对象:保存在堆内存中的连续内存空间

数组初始化即要对数组对象执行初始化,也就是为数组对象分配一块连续的内存空间,内存空间的长度就是数组的长度。

注:java程序中所有的引用变量,它们都不需要经过初始化操作,需要进行初始化操作的是该引用变量所引用的对象。

1.1.3基本类型数组的初始化

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

注:容易混淆的是:引用类型变量何时只是栈内存中的变量本身何时又变成引用实际的java对象。解:引用变量本质上只是一个指针,只要程序通过引用变量访问属性或来调用方法,该引用变量将会由它所引用的对象代替。

扩展:nullpointerexeception为当通过引用变量来访问实例属性或调用非静态方法时,如果该引用变量还未引用一个有效的对象就会引发空指针异常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值