面向对象
概念
很多招聘信息上会出现这样一个要求:深入理解OOP
什么是OOP?
OOP(Object-oriented programming)译为面向对象程序设计,常见的面向对象语言有:Java、OC、C++等等。
初步理解
之前我们学到的C语言,是一门面向过程的语言,但是OC是面向对象的。直接这样阐述可能会显得很抽象也显得很苍白,那么,举一个例子(事实上,这也是OC的原理):
在我们学习C语言的时候,我们接触到了一个概念,叫做结构体。现在假设有一个名为学生的结构体,我们可以将它定义为:
typedef struct {
char name[20];
int age;
float height;
} Student;
- 那么在OC中,我们将结构体称为类;
- 姓名、年龄、身高等信息,称为属性(或成员变量,之后会详细介绍属性和成员变量的关系);
- 将声明新的结构体变量
Student *student1;
,称为对象; - 将这个学生的一些动作行为(如读书、写字等),称为方法。
面向对象的特点
我们在学习一门面向对象的语言时,通常会接触到一下几个术语:
- 封装;
- 继承;
- 多态。
他们具体的含义与用法,我会在第二章进行讲解。