用Java无法做到这一点。
您的两个选项(您提到的一个)是使用公共获取程序并使字段私有,或在类中进行详尽的文档编制。
getter方法的开销非常小(如果有的话)。如果要执行大量操作,则可能要缓存获取的值,而不是调用get方法。
编辑:
实现此目标的一种方法(尽管它比getter的开销更大
innerC)是使用仅对您的
C类可用的构造函数定义一个公共内部类(让我们称之为),并使您的字段公开。这样,您将无法
innerC在类外部创建实例,因此无法从外部更改字段,但是可以从内部更改它们。但是,您可以从外面阅读它们。



