Java 中的字符串被认为是不可变的。 所以如果我说
String one = "myString";
和
String two = "myString";
在内部,两个对象将使用相同的文字。 现在让我困惑的是,为什么我应该在不同的类中将字符串设为私有(private),而在内部它们将引用相同的字符串文字。
仅仅是外部元素(如类或对象)不知道类内部有哪些成员吗?
最佳答案
可见性和访问权限实际上只在编译期间存在,以检查您是否能够执行此或操作,在运行时通常您可以调用私有(private)方法或通过不同的 hack 更改不可变数据
另一点:这些字符串是不可变的,因此您无法通过标准方法更改它们的值,因此它们可以位于内存中的同一位置,并且哪个类使用它们并不重要
关于java - 在 Java 中将字符串设置为私有(private)或公共(public),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19373823/