专栏名称: 码农翻身
工作15年的前IBM架构师分享好玩有趣的编程知识和职场的经验教训, 不容错过。
目录
今天看啥  ›  专栏  ›  码农翻身

Java 函数调用是传值还是传引用? 从字节码角度来看看!

码农翻身  · 公众号  · 程序员  · 2017-06-09 17:34
    

文章预览

本文是网友KailunTalk文章的精简版, 他从字节码的角度解释了Java 函数调用中传递参数的方式, 充分体现了一个程序员深度挖掘,了解底层的精神, 原文地址:https://my.oschina.net/kailuncen/blog/915043 1 传值还是传地址? 少废话,先看代码: function1会把车的颜色改为blue function2 创建了一个新的黑色的车car2, 并且把新车赋值给了输入参数car。 继续看测试类TestReference 经过 process. function1 的处理后,输出结果是: 这是很容易理解的, 车的颜色从red被改成了blue。 如果修改一下TestReference, 让它去调用process.function2(car) , 会有什么效果呢? 有经验的程序员可能立刻就能给出答案: 在main函数中的那个红色的车根本没有受到影响。 为什么会这样呢?  其实在Java函数调用的过程 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览