求大神解析String到底是值传递还是引用传递?

面试遇到这题,回答的是值传递,回头在网上查看,各种说法都有,我都晕了,大神详细介绍下值传递与引用传递吧!

String是引用类型。所以是引用传递
但是String没有任何可以改变它状态的字段/方法,所有操作String的方法都是返回一个新的String对象,所以在函数里无论怎么改变String都是让它指向新的对象,从而对实参没有影响。
String是只读的。

String 源码实现是含有指针的类.

字符串放在常量池里面,所以是值传递