面向对象(OOP)

一. 面向对象(OOP)

面向对象是将现实事物抽象出来用程序描述,举个例子,有一天我想吃鱼香肉丝,两个方案:一是自己去菜市场买食材,回来处理食材,炒一盘鱼香肉丝。二是,下馆子,直接对老板说:老板,来一份鱼香肉丝。
方案一,就是面向过程,方案二,就是面向对象
面向对象有什么优势呢?首先你不需要知道鱼香肉丝是怎么做的,降低了耦合性,如果突然间不想吃鱼香肉丝了,想吃地三鲜,对于方案一,可能不太容易了,还需要重新买食材,处理食材然后炒菜。对于方案二,就容易多了,直接大喊,老板,那个鱼香肉丝换成地三鲜吧,提高了可维护性。总的来说是降低耦合,提高维护性。
面向过程是具体化的,流程化的,解决一个问题,你需要一步一步的分析,一步一步的实现。
面向对象是模型化的,你只需抽象出一个类,这是一个封闭的盒子,在这里你拥有数据也拥有解决问题的方法。需要什么功能直接使用就可以了,不必去一步一步的实现,至于这个功能是如何实现的,管我们什么事?我们会用就可以了。
面向对象的底层其实还是面向过程,把面向过程抽象成类,然后封装,方便我们我们使用的就是面向对象了。

一. 面向对象的意义

  1. 将日常生活中习惯的思维方式引入程序设计中
  2. 将需求中的概念直观地映射到解决方案中
  3. 以模块为中心构建可复用的软件系统
  4. 提高软件产品的可维护性和可扩展性

二. 面向对象的基本概念

  1. 类和对象是面向对象中的两个基本概念

  2. 类(粽子、汤圆、月饼)

     指的是一类事物,是一个抽象的概念
     类是一种模型,这种模型可以创建出不同的对象实体
    
  3. 对象(南北的甜咸党的差异)

    指的是属于某个类的具体实体
    对象实体是类模型的一个具体实例
    

三. 类和对象的意义

  1. 类用于抽象的描述一类事物所持有的属性和行为

    如:电脑拥有CPU,内存和硬盘,并且可以开机和运行程序
    如:粽子,基本制作原料有粽叶、大米、制作工艺煮
    
  2. 对象是具体的事物,拥有所属类中描述的一切属性和行为

    如:每一只老虎都有不同的体总,不同的食量以及不同的性情
    如:每一个粽子都是独一无二的,北方的甜粽,南方的鲜肉粽
    

四. 类之间的基本关系

  1. 继承

     从已经在类细分出来的类和原类之间具有继承关系
     继承的类(子类)拥有原类(父类)的所有属性和行为
     举例:南北甜咸两党粽子都继承于粽子
    
  2. 组合

    一些类的存在必须依赖于其它的类,这种关系叫组合
    组合的类在某一个局部上由其它的类组成
    举例:每个粽子都由粽叶、糯米这些类组成
    

五.面向对象语言的三大特性

​ 封装、继承、多态

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值