zoukankan      html  css  js  c++  java
  • 类对象浅谈面向对象

    文章结束给大家来个程序员笑话:[M]

                      

        面向对象是事实天下模型的自然延长,在事实天下中任何实体都可以看作是对象。对象之间通过消息相互作用。事实天下中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。面向对象具有三大特点:封装,多态,继承。

        1. 简单理解类 

           类就是一个数据结构,封装了数据和操纵。

        2. 类与对象的关系

        说到类不得不提的是对象,对象和类之间就如同群体和个人的关系。例如:人类可所以一个类,张三李四便是其中的对象。类的概念可以很大,也可以范围小一些,可以把人类当做类,也可以把中国人、美国人或者男子、女人当做类。所以,不难理解,类和对象一个是概念,一个是实体。

        3. 面向对象之三大特点

        面向对象有三大特征:继承、封装、多态。

        3.1 特点一之封装——接口interface

            一般来说只要是程序就有封装,所以它并非是只有在面向对象里才有封装的概念。程序中函数就是封装。变量也是封装,当定义了一个int变量,无论给它赋什么值,对调用这个变量的程序来说,就是一个整数型类型的值。提到封装不得不提接口,因为封装是做接口(inter face)的进程。那只有用了interface这个关键字才是接口吗?在词典里interface的解释是“物体的接触面、界面”。天下是由物体构成的,所以我们的生活当中到处是接口。程序也都是由接口构成的,数据类型、关键字、函数、变量等等。比如说看到int这个词,就能够晓得它是整数型数据类型。可以说:int是整数型数据类型的接口。所以封装和接口不是面向对象特有的概念,只不过在面向对象里它们的范围扩大了而已。

        3.2 特点二之多态(Polymorphism)

        每日一道理
    翻开早已发黄的页张,试着寻找过去所留下的点点滴滴的足迹。多年前的好友似乎现在看来已变得陌生,匆忙之间,让这维持了多年的友谊变淡,找不出什么亲切感,只是偶尔遇上,淡淡地微笑,如今也只能在这发黄的页张中找寻过去的那些让人难忘的,至少我可以握住这仅剩下一段的“丝线头”……

           可能会碰到这样一种情况,同一个方法在派生类和基类中的行为是不同的,换句话来说,方法的详细行为取决为调用该方法的对象。这类复杂的行为成为多态。实现多态需要两种主要的机制:一是在派生类中重新定义基类的方法;二是使用虚方法。当把基类的函数定义为virtual后,程序将根据引用和指针指向的对象的类型选择方法;若不定义为虚函数,程序将根据引用类型和指针类型选择方法。

        3.3 特点三之继承

           C++提供了比修改代码更好的方法来扩展和修改类,这类方法叫做继承,继承能够从已有的类中派生出新的类,而派生类继承了原有类(基类)的特征,包含方法。可以通过继承完成以下任务:

           1,可以在已有的类的基础上添加功能

           2,可以给类添加数据

           3,可以修改类方法的行为

           当然可以通过复制原始代码,并对其停止修改来完成上述任务,但是继承机制只需要提供新特性,甚至不需要拜访源代码就能够派生出新类。如果购买的类库只提供了类方法的头文件和编译后代码,仍然可以使用库中的类派生出新的类,而且可以,在不公然自己的类的实现的情况下将自己的类 发给其他人。同时允许别人添加新特性。

        4. 面向对象Vs面向进程

          面向进程将程序分为两部分:数据和操纵。这类思想的核心是数据结构和算法的开发和优化,面向进程需要分析解决问题所需要的步调,然后用函数将这些步调一步步实现,使用的时候一个个调用。

           面向对象是把构成问题事务分解成各个对象,建立对象的目标不是为了完成一个步调,而是为了描叙某个事物在全部解决问题的步调中的行为。

         

    文章结束给大家分享下程序员的一些笑话语录: 开发时间
      项目经理: 如果我再给你一个人,那可以什么时候可以完工?程序员: 3个月吧!项目经理: 那给两个呢?程序员: 1个月吧!
    项目经理: 那100呢?程序员: 1年吧!
    项目经理: 那10000呢?程序员: 那我将永远无法完成任务.

  • 相关阅读:
    k3 cloud中获取自己开发的单据
    k3 cloud列表中出现很多空白
    k3 cloud支付申请单下推付款单时候提示未将对象引用设置到对象的实例
    k3 cloud出现应收单下推收款单,把收款单是结算方式修改成银行承兑汇票之后保存提示:收款单明细中结算方式为票据业务的实收金额之和不等于票据的当前占用金额之和,请检查数据!
    k3 cloud中出现合计和汇总以后没有显示出来,合价要新增一行以后才出现值
    共享打印机
    k3 cloud总账凭证点击保存的时候提示未将对象引用到对应的实例
    k3 cloud成本调整单引入单据后,再做出库成本核算。成本调整单列表已审核的单据消失,非已审核的单据还在,这是出库成本核算设置参数的问题吗?
    K3 cloud选单时候必须把必录的数据录完以后才可以选单
    k3 cloud成本调整单提示期末余额不存在调整单分录的维度,请先出库核算确认是否存在核算维度的数据
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3087726.html
Copyright © 2011-2022 走看看