发现之前的知识细节忘掉的很多,所以从现在开始要对之前的知识进行梳理一下,从oc开始
一.oc的语言点
1.c语言的超集,允许在oc中使用c语言源代码,编译器兼容c语言程序
2.具备完善的面向对象特征
3.包含一个运行时系统
4.类库丰富
二.面向对象编程
1.面向对象编程 OOP (Object Oriented Programming)
2.面向对象的编程有:c++,java,c#
3.概念:对象,类,封装,继承,组合等....
注:
两种编程思想
1.面向过程编程:分析解决问题的步骤,实现函数,依次调用。
2.面向对象编程:分解问题组成的对象,协调对象之间的联系和通信。解决问题
3.对象定义了解决问题的步骤中的行为,不刻意完成一个步骤。
4.以过程为中心,以对象为中心
5.面向对象设计具有良好的可扩展性,可重用性
三.类和对象
1.类和对象是面向对象的核心
2.定义类,创建对象,使用对象。
3.类是具有相同特征和行为的事物的抽象
4.对象是类的实例
5.类是对象的类型
四.oc中类的定义
1.面向对象编程中使用对象完成程序
2.开发中,先定义类,在创建对象,后使用
3.定义类分为两步:接口部分和实现部分。不可分开
a.接口部分:对外声明类的特征和行为;
b.实现部分:对内实现行为;
接口部分
1.接口部分的标志:@interface...@end
2.作用:声明类的实例变量和方法,即行为和特征
3.包含内容:类,父类名,实例变量,方法
实现部分
1.实现部分标志:@implementation....@end
2.作用:实现方法,即实现类的行为
类和文件
1.类:@interface...@end @interface...@end
2.文件:.h称为接口文件,.m称为实现文件。默认设置如下
a.使用类名命名文件
b. .h文件管理类的接口部分,.m文件管理类的实现部分
3.文件和类本质上没有关系,为了方便管理、实现封装特性
五.创建对象
1.创建对象分为两步:分配内存空间和初始化
2.分配内存空间:根据类中声明的实例变量为对象分配内存
3.初始化:对创建的对象进行实例变量的初始化设置
+(id)alloc; +表示这个方法属于类,只能类执行,id表示任意类型的对象,即创建好的对象
-(id)alloc; -表示这个方法属于对象,只能对象执行,id表示初始化完成的对象
注:
1.指针存储对象的首地址,代指对象。oc中使用指针对象进行操作
2.Person *p = [Person all]; 先执行等号右边;
[Person all]返回值是对象的首地址,即对象。
p是跟对象同类型的指针变量,存储对象首地址,代表对象
3.实例变量不等于对象