首页 > 代码库 > 面向对象
面向对象
如果解决一件事情的时候,每一件事情都是自己亲自去一步一步实现,那么这种解决问题的思路叫做面向过程。
如果解决一件事情的时候,自己不去亲自做,找一个专门做这种事情的人来帮我做,这种解决问题的思路叫面向对象。
面向过程和面向对象是解决一样事情的不同思路
面向过程--》后期的维护修改不方便
面向对象--》后期维护十分方便
当你遇到一个需求的时候,不要亲自去实现
先看看有没有现成的对象做这件事情的。框架,如果有直接使用
如果没有,就自己造一个拥有这样功能的对象,那么造出来的这个对象可以多次使用
对象:对象是现实生活中的一个具体的存在,看得见,摸得着,拿过来可以直接用。
类:类是对一群具有相同特征或者行为的事物的一个统称,抽象的,不能直接使用
类和对象之间的关系
类是模板,类的对象是根据这个模板创建出来的
类模板中有什么,对象中就有什么 绝不可能多 也不能少
类是制造月饼的模,模是不可以吃的,所以不能直接使用
对象是根据模制造出来的月饼,模上面有什么,出来的月饼就是什么样的
月饼可以吃,所以对象可以直接使用
设计一个类:
类的作用:用来描述一群具体相同特征和行为的食物
类的名字,你要描述的这类事物叫什么名字,
这类事物具有的相同的特征,这类事物拥有什么
这类事物具有的共同的行为,这类事物会做什么
定义类的语法
位置,直接写在源文件之中,不要写在main函数之中
类的定义分两部分
-》类的声明
@interface 类名 :NSObject
{
这类事物具有的共同的特征,将他们定义为变量
}
功能就是一个方法,将方法的声明写在这里
@end
-》类的实现
@implemention 类名
将方法的实现写在这里
@end
注意:
类必须要有声明和实现
类名用你描述事物的名称来命名就可以了
-》类名的每一个单词的开头一定要大写
NSObject是什么意思不用管 照写
用来表示这类事物共同的特征的变量必须定义在@interface的大括号中
定义在大括号中用来表示这类事物的共同的特征的变量我们叫属性、成员变量、实力变量、字段、、、、
属性名一定要以下划线 _ 开头
类无法被直接使用,如果非要使用这个类的话,就必须先找到这个类的一个具体存在
类和对象的关系:类中有的东西 这个类的对象也有 不会多不会少
创建一个类的对象:
语法: 类名 *对象名 = 【类名 new】;
Person *p1= [Persen new];
根据Person这个类的模板,创建了一个对象名字叫p1
p1对象的特点
-》可以直接使用
-》类中定义的东西 这个对象中也有 不会多也不会少
如何使用对象:
默认情况下,对象的属性是不允许被外界直接访问的
如果允许对象的属性被外界访问,那么就在声明属性哪里加一个@public关键字。
面向对象