Java:什么修饰符使对象在类外可读,但不可写?

Java:什么修饰符使对象在类外可读,但不可写?,java,access-modifiers,modifier,Java,Access Modifiers,Modifier,Java:什么修饰符使对象在类外可读,但不可写?并且可以在类中更改对象。若要将字段设置为公共只读字段,可以将字段设置为私有,并为该字段设置一个公共getter public class Example { private int myExample=1; public int getMyExample() { return myExample; } } 对于要通过其类的方法修改的字段,它必须是非-final。没有任何修饰符

Java:什么修饰符使对象在类外可读,但不可写?并且可以在类中更改对象。

若要将字段设置为公共只读字段,可以将字段设置为私有,并为该字段设置一个公共getter

public class Example {
       private  int myExample=1;
       public int getMyExample() {
              return myExample;
       }
}

对于要通过其类的方法修改的字段,它必须是非-final。没有任何修饰符或修饰符组合可以在不授予写访问权限的情况下授予对此类字段的读访问权限。访问控制修饰符(
public
protected
private
,或不使用任何这些修饰符)可同时控制字段或方法的可见性,以实现所有目的。它们不区分不同类型的访问


如果您希望一个可修改的字段是可读而不可写的,那么唯一的替代方法是在getter方法后面保护它,而不提供相应的setter,正如另一个答案所描述的那样。

将其设为私有setter和公共settergetter@thatotherguy那不是修饰语没有这样的修饰语。照Zamrony的建议去做。@DawoodibnKareem好吧,那太令人失望了。是的,我已经知道怎么做了,我正在寻找一个修饰符。好了,Java中的作用域修饰符只有
私有的
受保护的
公共的