// 12-【掌握】无参方法声明实现及调用#import//类的声明@interface Person : NSObject{ @public NSString * _name; int _age; float _weight;}//声明无参数的方法 对象方法 返回值类型 为空类型void 方法的名字叫做eat- (void)eat;//声明一个无参数对象方法 返回值类型为空类型 方法的名字叫做run- (void)run;//声明一个类方法 +表示类方法 方法名 breath 返回值类型 void+ (void)breath;@end//实现类@implementation Person//实现 无参数的方法 对象方法 返回值类型 为空类型void 方法的名字叫做eat- (void)eat{ //在对象方法中 访问 自己的 成员变量 NSLog(@" %f顿的 %@ 在吃吃吃吃 ",_weight,_name);}//实现一个无参数对象方法 返回值类型为空类型 方法的名字叫做run- (void)run{ NSLog(@"%f顿 %@ 在跑跑跑 ",_weight,_name);}//实现一个类方法 +表示类方法 方法名 breath 返回值类型 void+ (void)breath{ //尝试 在类方法中 去访问成员属性 结果是失败的,因为不知道改的是哪个对象的属性。 // NSLog(@"%@在大口大口的呼吸 ",_name);}@endint main(int argc, const char * argv[]) { @autoreleasepool { //创建一个对象 Person * zhangsan = [Person new]; zhangsan->_name = @"张三丰"; zhangsan->_weight = 300.5f; //通过张三这个对象 来调用张三的无参数对象方法 // [对象名 对象方法] [zhangsan eat]; [zhangsan run]; //尝试通过类名 去调用对象方法 结果是 失败的,因为不知道调用的是哪个对象的方法 。对象方法只能通过对象来调用,类方法只能通过类调用,在类方法不能访问成员属性。 //[Person eat]; //创建了一个对象李四 Person * lisi = [Person new ]; lisi->_name = @"李斯"; lisi->_weight = 150.0f; [lisi eat]; //调用类方法 // [类名 方法名] [Person breath]; //尝试 通过 对象去调用类方法结果是失败的 // [zhangsan breath]; } return 0;}