1.类和方法
1.1 声明及定义类的属性和方法:
// 在@interface文件中写类的方法及属性---------在@implementation中实现类的方法
// 以下是方法的实现:
- (id)init{
_name = @"张无忌";
_sex = @"男";
_hobby = @"乾坤大挪移";
_age = 23;
return self;
}
- (void)sayHi{
NSLog(@"我叫%@, 我性别%@, 我兴趣%@, 我年龄%ld", _name, _sex, _hobby, _age);
}
"-"是一个对象可以使用的方法,"id"表示返回值可以是任意类型的对象,"sel"f初始化完成自己
1.2 创建对象:
通过alloc init创建对象,并对对象进行初始化
<span style="font-size:18px;"> Person *p1 = [[Person alloc] init];</span>
1.3 调用方法
使用方括号调用方法:[p1 sayHi];------>消息发送机制
1.4 总结:
.h文件:放类的声明,包括成员变量,属性和方法声明。---------关键字@interface 类名 : (继承于) 父类名.....@end
.m文件:放置类方法的实现,------------关键字@implementation.......@end
2.实例变量
2.1 实例变量的可见度:
public-----都可以访问
protected-----本类和其子类可以访问
private-------只有本类的可以访问
2.2 方法
类方法:+
对象方法:-
// <span style="font-size:18px;">setter(设置器):</span>
- (void)setName:(NSString *) name{
_name = name;
}
// <span style="font-size:18px;">getter(访问器):</span>
- (NSString *)name{
return _name;
}
自定义初始化方法:
- (id)initWithName:(NSString *) name
age:(NSInteger) age{
_name = name;
_age = age;
return self;
}
OC的点语法适用于有setter和getter的时候,在OC中用点语法相当于调用set get方法
多参方法:
- (void)setName:(NSString *)name
Age:(NSInteger)age
Sex:(NSString *)sex{
_name = name;
_age = age;
_sex = sex;
}
// 多个参数初始化