优秀的编程知识分享平台

网站首页 > 技术文章 正文

阿瑟Java (19):Java 的函数是值传递吗?

nanyue 2024-10-22 13:12:27 技术文章 4 ℃

PS:创作不易,感谢阅读,希望对读者有所帮助,喜欢的话可以点赞、收藏、关注,作者会持续更新 Java 生态圈常见知识。黑色加粗为重点关注内容!

  • 值传递和引用传递有什么区别
    • 值传递:指的是在方法调用时,传递的是值的拷贝,也就是说传递后就互不相关了。
    • 引用传递:指的是在方法调用时,传递的是引用的地址,也就是变量所对应的内存空间的地址,也就是说传递前和传递后都指向同一个引用(也就是同一个内存空间)。
  • Java 只支持值传递
    • 对象采用的不是引用调用,实际上,对象引用是按值传递的。
    • 如传递一个对象,对象本身存在于堆中,而对象的引用存在于栈中
    • 所以方法中的参数是引用类型时,传递的是栈中的引用,即还是值传递,此时有两个引用指向堆中的同一个对象。
最近发表
标签列表