您的位置:首页 > 移动开发 > Objective-C

Objective-C 面向对象, 实例方法和类方法

2015-12-11 20:14 429 查看
建一个Person类

<Person.h> //定义实例方法和类方法

OC中的方法
方法:是类的功能代码,在(.h)文件中声明,在(.m)文件中实现。
语法:
- | + (返回类型)方法名:参数列表;
{
// 方法体
}

减号(-)表示实例方法,加号(+)表示类方法
*/

//类方法
/*
注意
1.类方法可以调用类方法
2.类方法不可以调用实例方法,但是类方法可以通过创建实例对象访问实例方法
3.类方法不可以使用实例变量,类方法可以使用self, 因为self不是实例变量
4.类方法作为消息,可以被发送到类里面去,不能发送到对象里面去
*/

#import <Foundation/Foundation.h>

@interface Person : NSObject
{
@public
NSString *_name;
NSInteger _age;
NSString *_hobby;
}

-(void)sayHello;  //实例方法

-(void)sayHelloName:(NSString *)name
andAge:(NSInteger)age;  //声明实例方法

+(void)sayHi;  //类方法

+(void)hiGuys;   //类方法

@end


<main.m> 调用实例方法和类方法

#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
//Person *personA = [Person new];
Person *personA = [[Person alloc] init];
[personA sayHello];

//        personA -> _name = @"大哥";
//        personA -> _age = 24;
[personA sayHelloName:@"猪猪侠" andAge:22];
 
[Person sayHi];  //类方法   只能用类名调用
[Person hiGuys];
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: