control+P上一行
control+N下一行
control+A首位置
control+E行末
control+D删除光标右边
//第一个点get, 第二个点set方法
cell.textLabel. text
调用了set的方法;//_array没有调用
self.array
非原子性
nonatomic 多线程,速度快
原子性
atomic 默认的,多线程安全
读写
readwrite 默认的setter,getter方法
只读
readonly 只有getter方法,
set方法
assign 分配再栈上,由系统管理。 基本数据类型
copy 复制新的一份地址, 用于字符串
retain 地址不变,内容改变 一般对象
//assign
-(void)setAge:( int)age {
_age = age;
}
//retain
-(void)setArray:( NSArray *)array {
if (_array != array) {
[ _array release ];//释放旧值
_array = [array retain ];//array备份一份
}
}
//copy
-(void)setName:( NSString *)name {
if (_name != name) {
[ _name release ];
_name = [name copy ];
}
}
设备屏幕分辨率
iphone:320X480
iphone4:640X960
ipad:768X1024
对象:就是类中实实在在的一个实例
指针是有类型的,对象也有类型,指针所指向的对象的类型,和指针的类型没有关系
基本类型存数值,指针类型存地址
“[ ] ”必然是调用方法
alloc 产生对象,在内存在给类名分配一块内存空间,用对象名指向这块空间
@class告诉编译器,不用去我的 .h文件中编译,我只是使用下类名
@property 是对方法声明的简写
@synthesize 是对 “方法的实现”的简写
1.一些面对对象的术语:
(1).类、class:一种能够实例化成对象的结构体,表示对象类型。
(2).对象、实例:一种包含值和指向其类的隐藏指针的结构体。
(3).消息:对象可以执行的操作,用于通知对象去做什么。采用“[对象 方法(操作)]”的方式进行方法调用,也称之为“发送消息”。
(4).方法:相应消息而执行的代码
(5).接口:类为对象提供的特征描述。
(6).实现:接口执行的代码。
(7).id:泛指,表示任何类型对象。
(8).超类、父类、super:继承的类。
(9).子类、孩子类:执行继承的类。