OC与C的对比

                                                一         OC与C的对比

1、源文件对比

.c语言中常见的源文件:.h文件和.c文件

文件扩展名              源类型

.h                         头文件,用于存放函数声明

.c                          c语言源文件,用于实现头文件中声明的方法

.oc中的源文件:.h头文件、.m和.mm的实现文件

文件扩展名              源类型

.h                         头文件,头文件包含类、方法、属性的声明

.c                          类的实现文件,参与编译的文件,用来实现类中声明的方法

2、关键字

(1)c语言中的关键字都可以在oc中使用

(2)oc新增的关键字在使用时,注意部分关键字以“@”开头

3、数据类型

(1)   c语言的数据类型

基本数据类型:整型(短整型short、整型int、长整型long)、字符型(char)、实型(单精度float、双精度double)

构造类型:数组、结构体、枚举、共用体

指针类型

空类型

(2)oc语言数据类型

基本数据类型:整型(短整型short、整型int、长整型long、布尔类型BOOL)、字符型(char)、实型(单精度float、双精度double)

构造类型:数组、结构体、枚举、共用体

指针类型:类(class)、id类型(动态对象类型\万能指针)

Block类型(代码块数据类型)

SEL(选择器数据类型)

空类型

4、流程控制语句对比

oc语言在c语言的基础上增加了“增强for循环”

5、函数(方法)定义和声明对比

方法只能写在类里面,而函数可以写在任何地方

6、面向对象新增特性

(1)封装:把内部实现细节屏蔽起来,只提供一些接口

(2)继承

(3)多态

7、面向对象新增语法

(1)属性生成器:@property、@synthesize(可以简化代码,属性和成员变量保存一致,如果没有@synthesize,属性有_线,而成员变量没有下划线)

8、协议

使用协议声明方法

9、foundtion框架

二、面向对象

1、面向对象的基本概念

(1)面向对象(object oriented,oo)是软件开发方法

(2)oop--面向对象编程

2、面向对象和面向过程的区别

(1)面向对象是相对面向过程而言的,两者都是一种思想

(2)面向过程:

强调的是功能行为

关注的是解决问题需要哪些步骤

(3)面向对象:

将功能封装进对象,强调具备了功能的对象

关注的是解决问题需要哪些对象

三、类和对象的关系

1、oc中用类来创建对象,对象是类的具体存在,因此,面向对象解决问题应该是先要设计哪些类,在利用类创建多个对象

2、如何设计一个类

(1)属性:对应类中的成员变量

(2)行为:对应类中的成员方法

3、拥有相同属性和行为都可以抽象为一个类

你可能感兴趣的:(OC与C的对比)