java学习day6-二维数组和面向对象的内存分配

1.二维数组的定义:元素是一维数组的数组

格式: 数据类型[][] 数组名 = new 数据类型[m][n]

         数据类型[][] 数组名 = new 数据类型[m][];

         数据类型[][] 数组名 = new 数据类型[][]{{...},{...},{...}};

         数据类型[][] 数组名 = {{...},{...},{...}};

 

2.二维数组在内存中的分配

二维数组是一个引用类型,引用类型是个对象,对象的默认值为null

定义二维数组时,会在堆内存为其分配内存空间(必须知道二维数组的行数,即一维数组的个数,才能够为其分配内存空间),首先给一个地址值0x001给arr,然后为二维数组里的一维数组分配内存空间,分别给一个地址值给一维数组,即0x0001给arr[0],0x0002给arr[1],0x0003给arr[2]。如果arr[3][]第二个元素值没有给出(相当于里面的一维数组的元素个数不知道),即以格式2定义二维数组,那么就无法为一维数组静态的分配内存空间了,即打印出来的arr[0],arr[1],arr[2]地址值是默认值null,可以动态的为其分配内存空间

         内存分配图:

  

 

3.面向对象

  类:成员变量 -定义在类中,方法之外

         成员方法- public void xxx() 

一个对象在内存中的分配

两个对象在内存中分配图

三个对象在内存中分配图

4.java中参数传递问题图解

  

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值