Java类为什么要通过Get、Set方法提供对外访问

【Java类为什么要通过Get、Set方法提供对外访问】我们学习Java之初就听到经验之谈说一般类属性的访问权限要设置为私有的,并通过提供Get和Set方法提供对外的访问权限,而这是为什么呢?
第一,有利于代码的可维护性。可以方便的在对属性访问前后添加必要的操作。
第二,有利于写出更健壮的代码。这个要从Java本身的特性说了,我们知道子类可以覆盖父类的方法,而属性是不能被覆盖的,但属性可以被隐藏,看下面的一个例子:

    推荐阅读