Java只有值传递,引用类型传参需要注意的地方

1. Java的数据类型分为基本数据类型(byte、short、int、long、float、double)和引用数据类型(String、Integer、Long、List、Map、自己定义的类......)。对于基本数据类型和引用数据类型,Java都是使用了值传递。
2. 对于基本数据类型,就是将实参的值拷贝一份给形参;对于引用数据类型传递参数时,不是将引用所指的对象传递过去,而是将引用的值,即地址传递过去。
3. 对于String这种类型的参数,虽是引用类型,但是形参改变并不会影响实参的变化。因为在JVM中操作String类型的变量时,如果变量改变,JVM并不会改变变量所指内存地址中的数据,而是新开辟一块内存存储新的值,并将变量指向新的内存地址。
简单来说就是,String类型的对象,java实现的方式比较特殊。修改这种类型的变量,就是重新生成一个对象,并让变量指向新的地址,而不是去修改原地址中的对象。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容