如何更准确的理解面向对象编程中的对象

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









本文转自 weijie@java 51CTO博客,原文链接:http://blog.51cto.com/weijie/66467,如需转载请自行联系原作者
目录
相关文章
|
存储 算法 编译器
03-📝C++核心语法|面向对象1【 C++编程规范、类和对象、面向对象程序设计案例、对象的构造和析构、C++面向对象模型初探】
复习`C++核心语法`,且适当进行汇编探索底层实现原理,进一步夯实基础,为以后的`底层开发`、`音视频开发`、`跨平台开发`、`算法`等方向的进一步学习埋下伏笔。
03-📝C++核心语法|面向对象1【 C++编程规范、类和对象、面向对象程序设计案例、对象的构造和析构、C++面向对象模型初探】
|
存储 安全 Java
Java面向对象编程三大特征 - 封装
Java面向对象编程三大特征 - 封装
80 0
|
敏捷开发 前端开发 测试技术
用“实例化需求”,让需求澄清更高效(下)
用“实例化需求”,让需求澄清更高效(下)
343 0
用“实例化需求”,让需求澄清更高效(下)
|
测试技术 领域建模 数据安全/隐私保护
用“实例化需求”,让需求澄清更高效(上)
用“实例化需求”,让需求澄清更高效(上)
638 0
用“实例化需求”,让需求澄清更高效(上)
第173天:面向对象——数据类型检测的四种方法
一、typeof 1 console.log(typeof 12); // number 2 var str = 'iceman'; 3 console.log(typeof str); // string 使用typeof检测数据类型,首先返回的都是一个字符串,其次字符串中包含了对应的数据类型...
1022 0
|
C# C++
《面向对象的思考过程(原书第4版)》一3.3 作用域的重要性
单个类可以实例化出多个对象。每个对象有唯一的标识和状态。这点很关键。会给每个单独构造的对象会分配独立的内存。然而,一个类实例化的多个对象可以共享类中一些属性和方法,从而共享为这些属性和方法分配的内存。
1455 0
《面向对象的思考过程(原书第4版)》一1.5 究竟什么是对象
对象是面向对象程序中的基础材料。使用面向对象技术的程序本质上是对象的集合。举例来说,一个公司系统包含了代表公司雇员的对象。接下来的小节描述了这些对象的数据和行为。
1051 0
|
JavaScript Java C#
《面向对象的思考过程(原书第4版)》一1.6 究竟什么是类
简单地说,类是对象的蓝图。当你实例化一个对象时,你基于类来构建这个对象。事实上,尝试解释类和对象实际上是一个先有鸡还是先有蛋的问题。描述类时不使用术语对象是非常困难的,反之亦然。例如,个人自行车是一个对象。
1169 0