相关疑难解决方法(0)

如何防止修改类中的私有字段?

想象一下,我有这个课程:

public class Test
{
  private String[] arr = new String[]{"1","2"};    

  public String[] getArr() 
  {
    return arr;
  }
}
Run Code Online (Sandbox Code Playgroud)

现在,我有另一个使用上述类的类:

Test test = new Test();
test.getArr()[0] ="some value!"; //!!!
Run Code Online (Sandbox Code Playgroud)

所以这就是问题:我从外面访问了一个类的私有字段!我怎么能阻止这个?我的意思是如何让这个数组不可变?这是否意味着使用每种getter方法,您都可以通过自己的方式访问私有字段?(我不想要任何像Guava这样的库.我只需要知道正确的方法来做到这一点).

java arrays oop class

164
推荐指数
5
解决办法
1万
查看次数

标签 统计

arrays ×1

class ×1

java ×1

oop ×1