学习笔记1
1.OC简介:
OC是C怨言的超集,他在C语言的基础上增加了最小的面向的对象的语法
2.对比C学习OC
数据类型、关键字、流程控制、函数
3.面向对象的思想
1、他是一种更接近于现实生活的一种编程思想
2、他思考问题强调的是谁去做
3、要完成某项任务,首先去找完成该任务的对象,如果没有就创建一个,然后指挥对象做事
4.对象
在面向对象中万物皆对象
从里一个角度来说,现实生活中的任何具体的事物都可以认为是一个对象
5.类
类从编程的设计角度,现实中一类事物抽象,抽象就是提取这一类事物共有的属性和行为
单从编程语言的角度,创建对象必须要有类,对象是类的实例化
6.类与对象的关系
汽车图纸与汽车的关系,房子的图纸与房子的关系
7.设计类
1、通过文字描述来设计一个类
名词提取法:只要遇到相关的名词,都可以提取一个类
2、看图提取一个类
图上的具有一些共性的事物都可以提取成一个类
一个类包含三个部分:
1.类名--一类食物的名称;
2.属性--某类事物共有的一些状态特征
3.行为--某类事物共有的一些功能特征
8.创建类
0、设计类
1、声明:对类的概括说明,他是给使用的人看的
1--确定类名
2--要继承NSObject,是为了让类有创建对像的能力
3--声明必须以@interface 开头 以@end 结尾
4--声明属性,必须在@interface 与@end之间的大括号中
声明属性的时候不可以对属性进行初始化
5--声明方法,必须在{}与@end之间进行声明,声明后不可以有方法的实现
格式:方法类型标识符 (返回值类型) 方法名:(参数类型) 参数名称 方法名:......
1、所有的数据类型都要使用小括号括起来
2、一个参数对应一个冒号
3、冒号是方法名称的一部分
2、实现:实现声明多有的方法
必须写在 @implementation 与@end
注意点:只有声明没有实现的类,链接的时候就会报错
只有实现没有声明的类,可以使用(OC的弱语法),但是编程的时候不可以这样做
声明和实现不可以嵌套,一个类的内部不可以声明其他的类
声明的属性没有写到大括号中,声明的方法写在大括号中
调用类的对象方法的时候只能通过该类对象调用,不能响函数一样直接调用
函数中不可以直接访问某个对象的属性和成员变量
9.函数与方法
1、函数都是平行的,没有谁隶属谁的关系
2、函数中定义变量都是局部变量,函数中只能操作类的成员变量
3、函数的调用直接通过函数名称进行调用的
对象方法:
1、他是隶属于该类的对象的,只能该类的对象调用
2、在对象方法中可以直接访问成员变量,以为他们都属于该类对象的
10.对象的创建
Object * obj = [类名 new];
1、为了你的对象在堆中开辟存储空间
2、将所有成员变量初始化为0,如果是对象类型的就初始化为nil
3、返回指向该对象的指针