oc学习笔记一
杂谈
好的程序员需要掌握三种语言:
* 工作流程自动化语言,通常是一种脚本语言
* 编辑器宏语言
* 构建系统和应用的语言
类是数据和操作数据的方法的集合,对象就是类的一个单独的实例。
oc类包含一个接口和一个实现
大部分的编程语言根据对`接口和实现`的处理方式 可以分为两种类型
* 不分离接口和实现
* 分离接口和实现
创建类
NSObject 让对象具有创建对象的能力
申明属性:以@interface 开头 以@end结尾之间的大括号中
声明的属性不能进行初始化
声明方法:必须在{},与@end 之间进行声明,不可以有方法的实现
格式:方法类型标示符 {返回值类型} 方法名:(参数类型) 参数名称
方法名:(参数类型) 参数名称
3.冒号是方法名称一部分
实现
实现:实现声明中得所有方法
必须写在@implementation 与@end
注意点:
- 只有声明没有实现的类,连接的时候就报错
- 只有实现没有声明的类,可以使用(oc弱语法),但是编程的时候不可以这么做
- 声明与实现不可以嵌套,一个类的内部也不可以声明其他类
- 少@end
- 声明的属性没有写在大括号中
- 声明的方法写在大括号中
- 调用类的对象方法的时候只能该类的对象,不能像函数一样直接调用
- 函数不能直接访问某个对象的成员变量
函数的与方法
- 函数都是平行的,没有谁隶属与谁的关系
- 函数中那个定义的变量都是局部变量,函数中能直接炒作一个类的成员变量
- 函数的调用的调用是直接通过函数名称进行调用的
-
方法类型标示符,该符号标示该方法为该类的方法- 在方法声明中所有类型都要用小括号()括起来,
:
参数的一部分 :
前面的文字用来描述参数的作用
- (void) sayHello :NSString who say :NSString hello
对象的创建 Object * obj = [类名 new];
- 为类的对象在堆中开辟存储空间
- 将所有成员变量初始化为0,如果是对象类型的就初始化为null
- 返回指向该对象的指针
类的声明 例子.
- 以@interface 开始 @end 结束
- 一个类包含两个部分声明和实现
- 声明的类要继承与NSObject
- [类名 new]作用
- 为Person这个对象在堆内存中分配内存
- 初始化成员变量
- 返回指向刚刚创建出来的对象的指针
- 注:一个类只有声明没有实现在连接的时候就会报错是不可能创建成功的
- 用@implementation 开头 @end结尾来创建该类
类的属性
- 在@interface 中声明类的属性(成员变量)
- 声明权限
@public
- 命名规则:标示符规则
- 命名规范:必须以_开头
_后面的首字母是小写,其后的单词的首字母大写
- 对象方法中可以直接访问对象的成员变量
oc中声明方法的格式
- 无形参 : 格式:
方法类型符 (返回值类型) 方法名称
- 对象方法: 是属于对象,只能通过对象调用,他的 方法类型 是
-
对象调用方法格式:
[对象 方法];
“`
@interface Person : NSObject
类的声明实例
类名声明实例