标签:
OC是面向对象的,C是面向过程的。面向对象和面向过程只是解决问题的两种不同思想
1) 以用电脑听歌为例子
a) 面向过程
? 打开电脑
? 播放电脑中的歌曲
? 关闭电脑
b) 面向对象(不是相亲的“对象”)
? 电脑
2 开机
2 播放歌曲
2 关机
2) 区别分析
? 面向过程关注的是解决问题需要哪些步骤;面向对象关注的是解决问题需要哪些对象
? 没有开发经验很难感受到它们的区别,两种思想都能达到解决问题的目的,但是解决思路不一样
? 想打电话\发短信 à 找手机,不用分析电话要怎样才能拨通
? 去饭店吃饭 à 找服务员,不用分析怎么到厨房炒菜
? 汽车坏了 à 找汽车维修工,不用分析修车的步骤
? 境界:万物皆对象
? 面向过程 Procedure Oriented
? 面向对象 Object Oriented,简称OO
? 面向对象编程 Object Oriented Programming,简称OOP
面向对象中有2个非常重要的概念:类和对象
1) 面向对象解决问题的时候必须有对象,那如何创建对象呢?
2) 现实生活的例子:如何创造汽车对象?
a) 需要先有汽车的建造图纸,图纸上描述清楚汽车应该具备的属性和功能(行为)
? 属性:轮子数、时速
? 功能(行为):跑
b) 然后再根据图纸上的描述生成汽车
c) 每一辆汽车都是对象,都有自己具体的属性值,都是图纸的实例
d) 图纸是抽象的,房子是具体的。图纸是对房子对象的高度概括
1) OC中的类相当于图纸,用来描述一类事物。也就是说,要想创建对象,必须先有类
2) OC利用类来创建对象,对象是类的具体存在
3) 因此,面向对象解决问题应该是先考虑需要设计哪些类,再利用类创建多少个对象
1) 类的设计,只关心3样东西:
? 事物名称(类名):人(Person)
? 属性:身高(height)、年龄(age)
? 行为(功能):跑(run)、打架(fight)
2) 一般名词都是类
? 坦克发射3颗炮弹轰掉了2架飞机
? 小明在公车上牵着一条叼着热狗的狗
3) 拥有相同(或者类似)属性和行为的对象都可以抽像出一个类
u 愤怒的小鸟游戏界面
u 植物大战僵尸
u 新浪微博
4) 类名、属性、行为练习
1.类的设计 1> 类名 * 类名的第一个字母必须大写 * 不能一下划线 * 2> 属性 3> 行为(功能) 2、植物大战僵尸的僵尸 * 类名:Zombie * 属性 life(生命值)、spped、gongjili * 行为 walk、bite、die 3.雷点的飞机 * 类名:plane * 属性: lefe 、gongjili 、speed、bombCount * 行为:fly、bomb、shoot、die 4.电脑 * 类名:Computer * 属性: band、expireDate * 行为:open、close
标签:
原文地址:http://www.cnblogs.com/sundaboke/p/4511521.html