现在面向对象的编程思想已经有好长的历史了,我们可能天天都在运用.我们应该如何理解它呢?100个人可能有100种答案,因为它太容易理解了,同时也是最难真正理会其含义的.理解好理解,但在实际的编程当中我们能否真正运用呢?一般很难,我们虽然写出的代码看似运用面向对象的分析而写出来的,其实你还是运用以前的老思想,面向过程的.怎样才能让我们的分析与我们的代码同步了,那就是必须先真正的理解对象.
大部人可能会说:万事万物皆对象.说对象是类的实力.等...
理论上说这些说法都是有道理的,但在我们编程当中,如果这样理解的话,起不到思想与代码的同步。
理解对象的最佳方法,我们应该把它看成"
具有责任的东西(事物)",其实也就是一条我们常用的设计规则:对象应该自己负责自己,而且应该清楚地知道自己的责任。(
自己对自己负责)这充分的体现了面向对象的封装性,自己的事自己做,不依靠别人。
面向对象编程的三个基本原则:
第一:封装性(透明):是将程序代码及其处理的数据绑定在一起的一种编程机制。该机制保证了程序和数据不受外部干扰和不被误用。理解封装的一个好办法就是把它想象成一个黑箱子,它可以阻止在外部定义的代码随意访问内部代码和数据。对黑箱子内的代码和数据的访问要通过一个适当的接口严格控制。
封装也就是隐藏了对象的属性和实现细节。仅仅对外公开接口。
在java中封装的基本的单元:类(class)。
封装到底在软件系统中能带来哪些优点了。
1。便于使用者正确,方便地理解和使用系统,防止使用者错误修改系统的属性。
2。有助于建立各个系统之间的松耦合,高内聚,提高系统的独立性。
3.提高软件的可重用性,每个系统都是一个相对独立的整体,可以在多种环境中得到重用。
4。降低了构建大型系统的风险,即使整个系统不成功,个别独立的子系统还有可能是用价值的。
封装的两大原则:
1。把尽可能多的东西隐藏起来,对外提供简单的接口。(系统的封装程度越高,那么它的相对独立性就越高,而且使用起来也越方便)。
2。把所有的属性藏起来。
本文转自 weijie@java 51CTO博客,原文链接:http://blog.51cto.com/weijie/66467,如需转载请自行联系原作者