面向对象的思想

1. 面向对象基本概念

面向对象(Object Oriented,OO)是软件开发方法
面向对象是一种对现实世界理解和抽象的方法,是计算机编程技术发展到一定阶段后的产物。
Object Oriented Programming-OOP ——面向对象编程

2. 面向对象和面向过程区别

  • 面向过程
    强调的是功能行为
    关注的是解决问题需要哪些步骤

  • 面向对象
    将功能封装进对象,强调具备了功能的对象
    关注的是解决问题需要哪些对象

  • 示例

把衣服放进洗衣机

  • 面向过程

打开洗衣机
放进去衣服
关闭洗衣机

  • 面向对象

洗衣机-打开
洗衣机-存储
洗衣机-关闭

3.面向对象的特点

是一种符合人们思考习惯的思想
可以将复杂的事情简单化
将程序员从执行者转换成了指挥者
找到一个对象,让对象帮我做一些事情,

完成需求时:
先要去找具有所需的功能的对象来用。
如果该对象不存在,那么创建一个具有所需功能的对象。
这样简化开发并提高复用。

类与对象

1. 类与对象的关系

  • 面向对象的核心就是对象,那怎么创建对象?
    OC中创建对象比较复杂, 首先要理解一个概念叫做类.
    现实生活中是根据一份描述,一份模板创建对象,编程语言也一样,也必须先有一份描述,在这个描述中说清楚将来创建出来的对象有哪些属性和行为
    OC中的类相当于图纸,用来描述一类事物。也就是说,要想创建对象必须先有类
    OC利用类来创建对象,对象是类的具体存在, 因此面向对象解决问题应该是先考虑需要设计哪些类,再利用类创建多少个对象

类的设计

1. 如何设计一个类

  • 生活中描述事物无非就是描述事物的名称/属性和行为。

如:人有身高,体重等属性,有说话,打架等行为。
事物名称(类名):人(Person)
属性:身高(height)、年龄(age)
行为(功能):跑(run)、打架(fight)

  • OC中用类来描述事物也是如此
    属性:对应类中的成员变量。
    行为:对应类中的成员方法。
  • 定义类其实在定义类中的成员(成员变量和成员方法)

2. 如何分析一个类

  • 一般名词都是类(名词提炼法)
  • 飞机发射两颗炮弹摧毁了8辆装甲车
    飞机
    炮弹
    装甲车
  • 隔壁老王在公车上牵着一条叼着热狗的草泥马
    老王
    热狗
    草泥马
  • 拥有相同(或者类似)属性(状态特征)和行为(能干什么事)的对象都可以抽像成为一个类
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容