现在的位置: 首页 > 综合 > 正文

【翻译】objective-c:创建方法

2012年09月06日 ⁄ 综合 ⁄ 共 1240字 ⁄ 字号 评论关闭
1、如果想创建实例方法使用“-”,类方法用“+ "。
2、选择一个返回类型,用括号包住这个类型。(void)意味着没有返回值, (BOOL)意味着返回一个boolean类型的值。 (NSObject *)返回一个NSObject实例,别忘记(id)。
3、给方法起个名字,通常用小写字母开头,例如:sendEmailTo 。
4、如果你不想使用参数直接跳转到9。
5、(oc非常恶心但是同样是非常有意义的机制)给你的参数选择两个名字,第一个会变成方法名称的一部分,然后被用于外部调用时(这个是可选的,除了第一个参数)。另一个名字会被用于方法内部,对于方法的第一个参数的第一个名字来说这个是例外(其实第一个参数的名称可以近似认为是方法名称)。对于第一个参数你只需要选择第二个名字就行了。
6、选择完名字之后,你需要给参数选择类型,类型用括号包起来。
7、(对于非第一个参数来说)在参数的第一个名字后面加上":"号,然后加上6中的类型,后面在跟上参数的第二个名字。
8、添加其它参数请重复5-7的步骤。
9、在方法名称或者参数后面加入{}即可。
 
- (BOOL) sendEmailTo:(NSString *)paramTo
                 withSubject:(NSString *)paramSubject
       andEmailMessage:(NSString *)paramEmailMessage{
/* Send the email and return an appropriate value */
if ([paramTo length] == 0 ||
[paramSubject length] == 0 ||
[paramEmailMessage length] == 0){
/* One or some of the parameters are empty */
NSLog(@"Empty parameter(s) is/are provided.");
return NO;
}
return YES;
}
 
对于调用方法,你可以这样:
 
[self sendEmailTo:@"someone@somewhere.com"
                              :@"My Subject"
                              :@"Please read my email."];
 
也可以这样:
[self sendEmailTo:@"someone@somewhere.com"
          withSubject:@"My Subject"
andEmailMessage:@"Please read my email."];
 
还是后者比较容易读懂代码。
 
 
当你想创建类方法时,基本和定义实例方法差不错,当你开始做的时候记住以下几点:
1、用”+“代替”-“。
2、在类方法中可以使用self关键字(没明白,似乎实例方法中也可以啊)。
 
类方法对于想要提供一些新的对象初始化方法来说很有用,比如定义一个名字为    allocAndInit的方法,可以实现分配和初始化两个工作。

  

抱歉!评论已关闭.