编程语言
首页 > 编程语言> > Java封装

Java封装

作者:互联网

参见英文答案 > Why use getters and setters/accessors? [closed]                                    38个
我们总是说如果我们只是将变量私有定义并定义getter setters来访问这些变量,那么数据将被封装.我的问题是,如果我们可以通过getter和setter访问变量(数据),那么数据是如何隐藏或安全的?

我用Google搜索了很多解释,但我什么都没发现.每个人都在他们的博客和帖子中说过,这是一种数据隐藏技术,但尚未得到解释/阐述.

解决方法:

我理解你的问题的方式是,虽然我们将变量声明为私有,因为这些变量可以使用getter和setter来访问,但它们不是私有的.那么,这样做的意义是什么?

好吧,当使用getter和setter时,您可以限制对私有变量的访问.

即,

private int x;

public int getInt(String password){
 if(password.equals("RealPassword")){
   return x;
  }
}

对于制定者来说也是如此.

标签:java,oop,java-ee,encapsulation
来源: https://codeday.me/bug/20190925/1817426.html