Object的面向对象编程
方法定义:
- (void) loginWithUsername:(NSString *)username andPassword(NSString *)password
- :方法类型标示符;
(-:表示实例方法;+:表示类方法)
(void):返回值
loginWithUsername:andPassword:
函数名称
NSString * : 参数类型
username、password:参数名称
方法的调用或叫发送消息
[对象名称 方法名:参数];
成员变量的访问
默认定义的成员变量为protected
通过成员变量合成存取器
@property (参数) 类型 成员变量名称;
参数3大类:
读写属性(readwrite/readonly);
内存管理属性(assign/retain/copy);
原子性atomicity (nonatomic),关系线程安全d
的
atomicity : 线程安全,但影响性能
nonatomic : 不考虑线程安全,提高性能;
@synthesize 变量名
成员变量实际开发中的应用方式
如果实例生成的对象名是myApp
myApp.title = @"xxx";
[myApp title:@"xxx"];相当于[myApp setTilte:@"xxx"];
myApp->title = @"xxx";
构造方法
Object-C的构造方法命名没有限制,默认构造方法名:init,自定义构造方法名一般以init开头,并且有返回值即本身类型的指针
例如:
-(myClass *) initWithOne:(NSString *) newOne
andTwo:(NSString *) newTwo
andThree:(NSString *) newThree{
self = [super init];
if(self){
self.one = newOne;
self.two = newTwo;
self.three = newThree;
}
return self;
}