码迷,mamicode.com
首页 > 其他好文 > 详细

+、-方法

时间:2016-02-28 20:08:12      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:

首先来说,加号方法和减号方法在调用上是有区别的:加号方法是类方法,调用的时候使用类名进行调用,减号方法是对象方法,调用的时候使用对象名进行调用。

以alloc方法和init方法为例:

People *p1 =[[People alloc]init];

alloc是一个类方法,因此调用的时候采用类名People进行调用,但init实际上是一个对象方法,在这里[People alloc]相当于是对对象进行了实例化,分配了内存空间,因此init相当于是一个对象方法。

一个方法(函数)使用时一般是三个步骤,声明,实现,调用,声明是在类的.h文件中进行的,实现实在类的.m文件进行的。调用则是在其他类的.m文件中进行的,比如说main.m。

其次,加号方法和减号方法是可以互相调用的,减号方法中调用加号方法直接使用类名就可以调用,加号方法中调用减号方法则需要实例化对象。

另外,关于成员变量的调用两者也不相同,对于减号方法,声明一个成员变量可以直接调用,而加号方法想要调用成员变量,只能声明一个静态的成员变量。

#import "People.h"

@implementation People
{
    NSString *_peopleName;
}

static NSString *_peopleName1;

-(void)report
{
    NSLog(@"-号:report");
    //[People report1];
    _peopleName = @"123";
}
+(void)report1
{
    NSLog(@"+号:reprot1");
    [[People alloc] report];
    _peopleName1 = @"张三";
}
@end

 最后,对于函数或者方法来说,有以下几点概念:

1.返回值类型:函数名前面的括号内代表的即是返回值类型,如果没有返回值则可以使用(void)

2.参数:函数名冒号之后的部分就是参数,参数包含参数类型和参数名两部分

3.函数名:去掉函数类型,去掉参数类型,去掉参数名,剩下的就是函数名。

因此可以说,函数声明部分由函数(返回值)类型,参数类型,参数名,函数名四个部分组成。

//函数名showWithA: andB:
-(int) showWithA:(int)a andB:(int)b

 

+、-方法

标签:

原文地址:http://www.cnblogs.com/superorangecc/p/5225364.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!