为私人领域提供getter和setter有什么意义?

时间:2016-03-20 12:18:50

标签: java oop javabeans

为公共变量提供getter和setter方法很好。 它具有以下优点:

  1. 访问varibales的集中控制
  2. 在设置值之前为程序员提供验证机会。
  3. 但是对于私有字段,如果我们提供getter和setter,那么该变量不再是私有的。它没有打破封装原则吗? 你能否解释为私人会员使用getter和setter的真正优势?或者是我们都盲目使用的东西?

    我阅读了许多博客,但无法获得有关私有变量的getter和setter的令人信服的理由。

1 个答案:

答案 0 :(得分:0)

这恰恰相反。如果变量是公共的,则可以设置该值而不验证它。如果它是私有的,你需要通过getter和setter访问它,并且不能绕过它们。