定义一个人物的,并且用封装的原理
封装的概念及原理 一. 在.h文件中
#import <Foundation/Foundation.h> typedef enum {kSexMan,kSexWoman,kSexYao} @interface person : NSObject { //定义变量 NSString *_name;//姓名 int _age;//年龄 Sex_sex;//性别 float_height;//身高 //_name的set方法,以后对name设置值,一律用此方法 -(void)setName:(NSString *)name; -(void)setAge:(int)age; -(void)setSex:(Sex)sex; -(void)setHeight:(float)height; } -(NSString *)name; -(int)age; -(Sex)sex; -(float)height;
@end ///////////
二. 在.m文件中
#import "person.h" @implementation person ; -(void)setName:(NSString *)name{ _name=name; } -(void)setAge:(int)age{ _age=age; } -(void)setSex:(Sex)sex{ _sex=sex; } -(void)setHight:(float)height{ _height=height; }
//**********get方法的是实现**********
-(NSString *)name{ return _name; } -(int)age{ return _age; } -(Sex)sex{ return _sex; } -(float)height{ return _height; }
@end
////////////
三. 在main.m文件中
#import <Foundation/Foundation.h> #include "person.h" int main(int argc, const char * argv[]) { @autoreleasepool { person *p=[person new]; //设置名称 [p setname:@"王大锤"]; [p setage:23]; [p setsex:ksetyao]; [p sethight:2.00f]; //打印输出个值 NSLog(@"%@,%d,%d,%.2f",[p name],[p age],[p sex],[p height]) } return 0; }
|