李洪强iOS开发之OC[017]函数和方法的区别

时间:2022-02-01 10:47:39

李洪强iOS开发之OC[017]函数和方法的区别

李洪强iOS开发之OC[017]函数和方法的区别

李洪强iOS开发之OC[017]函数和方法的区别

//

//  main.m

//  15 - 函数和对象的方法的区别

//

//  Created by vic fan on 16/7/12.

//  Copyright © 2016年 李洪强. All rights reserved.

//

函数和对象方法的区别

对象方法:

- (void)run;

#import <Foundation/Foundation.h>

@interface Person : NSObject{

@public

//定义实例变量

NSString *_name;//姓名

int _age;//年龄

}

//方法的声明;

- (void)run;//人跑的方法的声明

@end

//类的实现

@implementation Person

//方法的实现

- (void)run{

NSLog(@"周杰伦的床边故事");

}

@end

int main(int argc, const char * argv[]) {

@autoreleasepool {

/**

*  创建对象

*/

Person *p = [Person new];

/**

*  给实例变量赋值

*/

p->_age = 12;

p->_name = @"李洪强";

//调用方法

[p run];

//  对象方法不能调用函数

对象方法:

1 对象方法都以 - 开头,类方法以 + 开头

2对象方法只能由对象来调用,不能当做函数一样调用

3对象方法归类/对象所有

4 对象方法的实现只能写在@implementtation...@end中

对象方法的声明只能写在 @interface...@end中

函数:

1 所有的函数都是平行的

2 函数使用的时候,可以直接调用

3 函数不存在了隶属关系

4 函数不能写在 @interface 中的,但是

可以写在@implation中的,不可以写在主函数中的

5 函数不能访问对象中的实例变量

}

return 0;

}