1、
1
2
|
NSString *s = @
"hello"
;
NSLog(@
"age = %d"
, age);
|
2、标示符必须以字母、下划线、美元符号开头;
OC采用Unicode编码;
3、数据类型:
Byte:1个字节
short::2个字节
int:4个字节
float:4个字节
double:8个字节
long:8个字节
4、id 类型可以存储任何类型的数据,格式化说明符:%p,打印指针也用%p
5、类是对同一类事物高度的抽象,类中定义了这一类对象所应具有的静态属性(属性)和动态属性(方法);
对象是类的一个实例,是一个具体的事物;
类与对象是抽象与具体的关系;
类其实就是一种数据类型,它的变量就是对象;
6、OC中对象的创建,使用alloc 创建一个对象:
1
|
Person *person = [Person alloc];
|
需要对对象进行初始化,对象才能使用:
1
|
person = [person init];
|
(方法嵌套使用:
1
|
Person *person = [[Person alloc] init];
|
)
7、
1
2
3
4
5
6
|
-(id) _getAge: (
int
) _age
{
if
(self = [super init])
//初始化父类(NSObject),成功后赋给子类self,然后才能对类方法和对象进行使用
age = _age;
return
self;
}
|
8、self 指的是类对象本身;用来调用本类对象的方法;
super 指的是父类对象本身;用来调用父类的方法;
9、self指针表示当前对象;谁在执行该self就表示谁,super表示当前对象的父对象;
10、@property 和@synthesize 用法及属性
1
2
3
4
5
6
7
8
9
10
11
12
|
//.h
@interface Person:NSObject
{
int
myNumber;
}
@property(nonatomic)
int
myNumber;
@end
//.m
@implementation Person
@synthesize myNumber;
@end
|
该做法会自动生成myNumber 的setmyNumber和getmyNumber方法,
1
2
|
[person setmyNumber:23];
NSLog(@
"myNumber = %d"
, myNumber);
|
@property( )括号内参数:
readwrite: 读写(默认)
readonly: 只读
assign: 引用计数不增加(默认)
retain: 引用计数增加1
actomic: 原子性(默认)
nonatomic: 非原子性
1
2
3
|
//点语法
self.myNumber = 23;
//设置
self.myNumber;
//访问
|