* 面向过程编程(Procedure Oriented programming)
* :以事件为中心,关心完成该事件的详细步骤,一步一步如何实现
面向对象编程(Object oriented programming)
以事物为中心,也就是参与事件的参与者,设计事物的功能,而完成事件,只是事件的所有功能中的一个小功能
//消息发送机制
//[ receiver Message (消息 , 相对于方法) ]
//receiver :消息的接收者, 类 或者 对象
// Message : 消息 , 相对于方法
// 如何区分消息是给类还是给对象的消息
//如果方法是一个 - 号 方法,--------对象
//如果方法是一个 + 号方法, --------类.
//创建对象分两步:
//1.开辟空间.
//通过 [person alloc] 在堆区开辟的空间才是真正的对象 ,只不过对于指针变量per 存储着堆区的首地址,通过它才能访问对象,所以我们把指针变量per 叫做对象 , (但是 真正的对象是堆区空间 ,per 本质上就是一个指针变量).
//id 可以代表所有的对象类型 ,可以用对应类型的对象来接受.
// Person *per = [Person alloc];
//2.初始化(赋初值) inti方法 完成初始化操作 - 号方法,对象调用.
// per = [per init];
//通常创建对象操作连起来写
//NO visible @interface for ‘MobilePhone‘ declares the selector ‘call‘
//产生原因: 没有找到给接收者发送的消息 ,(也就是没有找到方法 . h文件中没有该方法)
//解决方法: 查看接受者和对应的消息是否匹配,如果不匹配,改成匹配, 或者给该类添加该方法.
//类: 具有相同特征 和相同行为的事物的抽象,
//类是一个抽象的概念在生活中不具体.
//对象是累的实例, 也就是类的具体表现, 是具体的,生活中的万物都是对象.
//描述一个类: 通过特征(静态属性) 以及行为(动态属性 ,动作)
// insert code here...
//@ 的作用: OC 的标志.
* 类的定义分为两部分:
1,类的接口部分 : 提供外部访问的接口, 相当于使用说明书
2,类的实现部分:相当于功能的实现
*/
/**
* 类的接口部分写下.h文件中
接口部分的定义 :
1. 以@interface 开头,以@end 结束.只有把累的接口定义内容下在开始和结束之间才有效
2. person 代表类名.
3. : 冒号表示继承.表示它有父类.
4. NSObject 父类名
//实例变量必须写在大括号之内 , 而且括号内只能写实例变量
//对应描述一个类的特征.
//实例变量 类似结构体中的结构体成员
* 类的实现部分写在.m文件中
类的实现部分 :
[email protected] 开头 @end 结束,实现内容必须写在中间才有效
[email protected] 后的person 是要实现的类(需要指定要对哪一个类做实现)
Method definition for ‘ print:‘ not found.
原因 : print: 方法虽然在.h文件中声明了,但是没有在 . m 中实现
解决方案: 将该方法在 .m文件中实现
类的实现其实就是实现该类的方法
OC 整理 1