【封装】java中为什么要将属性进行私有化,又使用set和get方法来设置和获取属性呢?

其实这里体现的就是封装的思想: 将数据与行为进行分离。

试想, 如果外面的程序可以随意修改一个类的成员变量,会造成不可预料的程序错误, 就象一个人的名字,
不能被外部随意修改,只能通过各种给定的方法去修改这个属性。
所以我们将成员变量声明为private,再通过 public的方法来对这个变量进行访问。
对一个变量的操作,一般都有读取和赋值操作,我们分别定义两个方法来实现这两种操作:
一个是getXxx()(Xxx 表示要访问的成员变量的名字),用来获取这个成员变量;
另外一个是 setXxx()用来对这个成员变量修改。


简单介绍一下封装的思想:
1.封装的概念:封装就是将属性私有化,提供公有的方法访问私有的属性。
2.实现封装的步骤:
(1)使用private关键字修改属性的可见性,限制外部方法对属性的访问;
(2)为每个属性创建一对赋值方法和取值方法,就是set和get,用于对这些属性的访问;
(3)在赋值和取值方法中,还可以加入对属性的存取限制。

3.封装的好处:
(1)隐藏类的实现细节;
(2)让使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制方法,限制对属性的不合理操作;
(3)便于修改,增强代码的维护性和健壮性;
(4)提高代码的安全性和规范性;
(5)使程序更加具备稳定性和可拓展性。

你可能感兴趣的:(java)