gpt4 book ai didi

java - 为什么在java String构造函数的实现中可以直接引用另一个字符串的私有(private)属性

转载 作者:行者123 更新时间:2023-11-29 07:58:59 26 4
gpt4 key购买 nike

我已经查看了Java.lang.String 实现。构造函数让我感到困惑。
为什么result.value,result.count,result.offset可以直接使用
由于三者的属性(property)只是私有(private)!!!

 /** The value is used for character storage. */
private final char value[];

/** The offset is the first index of the storage that is used. */
private final int offset;

/** The count is the number of characters in the String. */
private final int count;

public String(StringBuilder builder) {
String result = builder.toString();
this.value = result.value;
this.count = result.count;
this.offset = result.offset;
}

最佳答案

Java 方法可以访问声明它的类的任何 实例的私有(private)字段值。它是语言的一部分。

(也许您认为“私有(private)”在 Java 中的含义与它在现实生活中的含义相同。事实并非如此。Java 访问修饰符主要不是维护数据隐私或安全性的机制。访问修饰符是什么主要是维护抽象边界;即防止一个类依赖于另一个类的内部实现细节。)

关于java - 为什么在java String构造函数的实现中可以直接引用另一个字符串的私有(private)属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15696824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com