1.软件编程的实质 编程的实质就是将人类的思想转换成机器可以理解的语言的过程。 学习的核心问题就是掌握这种思维的方式。 OC是一种面向对象的语言。 2.对象 面向对象是相对面向过程而言。面向对象和面向过程都是一种思想。
例如洗衣服这件事的不同理解。 面向过程的方式去理解:准备衣服已经相关的用品,打开洗衣机,放入衣服和洗衣液,启动洗衣机。 面向 对象的理解方法:买个全自动洗衣机,准备要洗的衣物及用品。或者找个人帮你洗,呵呵。
面向过程:按人们认识客观世界的系统思维方式,采用基于对象(实体)的概念建立模型, 模拟客观世界分析、设计、实现软件的办法。通过面向对象的理念使计算机软件系统能与现实世界中的系统一一对应。 面向对象:是一种解决软件复用的设计和编程方法。这种方法把软件系统中相近相似的操作逻辑和操作应用数据、状态, 以类的型式描述出来,以对象实例的形式在软件系统中复用,以达到提高软件开发效率的作用。 它的优点是可以大幅度提高软件项目的成功率,减少维护的费用,提高可移植性和可靠性。
面向对象设计四个个主要特征
二者的区别:
面向过程是把问题中的数据用算法进行描述,强调功能性;
面向对象是把功能封装进对象,强调问题的解决需要哪些对象的使用。
面向对象的编程思想是基于面向过程发展而来的,这是计算机程序设计发展到一定阶段的必然产物。
3.类和对象 class 类:类是具有相似内部状态和运动规律的实体的集合(或统称、抽象)。 对象(object):即指现实世界中各种各样的实体。它可以指具体的事物也可以指抽象的事物。
消息(Message): 消息是指对象间相互联系和相互作用的方式。一个消息主要由5部分组成:发送消息的对象、接收消息的对象、消息传递办法、消息内容(参数)、反馈。
例如施工图纸可以看成是房子的类,汽车设计图可以看成是车的类等,类是事物的一种抽象概况。 一个类可以实例化出多个对象。 类(Class) 一个类由3个部分构成: 类的名称:类名
类的属性:一组包含数据的属性
类的方法:允许对属性中包含的数据进行操作的方法
对象(object):
是系统中的基本运行实体;对象就是类类型(class type)的变量;
定义了一个类,就可以创建这个类的多个对象;一个类就是具有相同类型的对象的抽象;
类的抽象方法:一般可以用到名字抽象法,就是说名词一般都是一类。 小明玩电脑 人类-对象是小明 电脑是一类 玩-是小明的行为
4.类的声明和实现 在OC中类的定义有两部分:类的声明、类的实现。
.h: 类的声明文件,用于声明成员变量、方法。类的声明使用关键字@interface和@end。
注意:.h中的方法只是做一个声明,并不对方法进行实现。 也就是说,只是说明一下方法名、方法的返回值类型、方法接收的参数类型而已,并不会编写方法内部的代码。
.m: 类的实现文件,用于实现.h中声明的方法。类的实现使用关键字@implementation和@end。
方法的声明和实现,都必须以 + 或者 -开头: + 表示类方法(静态方法) - 表示对象方法(动态方法) 在.h中声明的所有方法作用域都是public类型,不能更改。
成员变量的常用作用域有3种: @public 全局都可以访问 @protected 只能在类内部和子类中访问 @private 只能在类内部访问
声明一个类 .h: @interface Student : NSObject{ int age; NSString * name; } -(void)goToClass; @end 实现一个类 .m: @implementation -(void)goToClass{ NSLog(@"GO to class!"); }
@end
|