08-从零玩转JavaWeb-引用类型地址传递

时间:2021-12-04 13:19:21

一、引用类型有哪些

  

  接口

  数组

  枚举

  注解

  以上五种为引用数据类型, 我们现在学了其中的两种

  使用new关键字创建出来的类型都是引用数据类型

 

二、什么是地址传递

       引用数据类型有两块存储空间

  一个在栈(Stack)中,一个在堆(heap)中。
  
栈中存放的是堆中的地址

  当我们把引用类型当作参数传递时,我们传递的其实是堆中的地址。

  我们通过一个示例来去详细介绍

三、交换数组当中的两个元素

  以下是交换数组的方法

  08-从零玩转JavaWeb-引用类型地址传递

  可以看到,该方法当中要求我们传入一个数组

  下面执行该方法

  08-从零玩转JavaWeb-引用类型地址传递

   这里的num传递的是属于地址传递,num现在是一个堆中的地址。

   把地址传递到方法当中 , 所以在方法里面修改的是堆中相同的地址。

   通过数组创建的图解:

  08-从零玩转JavaWeb-引用类型地址传递

   当调用swap(num)时,其实传递的是0X001

  08-从零玩转JavaWeb-引用类型地址传递

  两个修改的是同一个地址。

  当swap方法执行结束,Swap出栈后

  main里面的num仍指向的是修改之后的地址

  所以打印里面的值,还是修改之后的值。

 

关注以下微信号“码蚁小强

第一时间获取《从零玩转JavaWeb+项目实战》最新更新视频及下载地址

08-从零玩转JavaWeb-引用类型地址传递

上课“代码+软件+Xmind笔记”在“码蚁Java学习交流群:625973026“文件共享当中

 网易云:点击在线观看  建议倍速观看