关于objective-c中类的组合
来源:互联网 发布:时间压缩 知乎 编辑:程序博客网 时间:2024/06/10 18:15
关于objective-c中类的组合问题,我们先来看一道题:
1.设计2个类,类之间的关系自拟(比如继承、组合)
1> 身材数据
(1)属性
* 身高
* 体重
* 手长
* 脚长
(2)方法
* 属性相应的set和get方法
2> 人
(1)属性
* 年龄
* 身高
* 体重
* 手长
* 脚长
(2)方法
* 属性相应的set和get方法
思路:在这道题里面,人拥有一份 身材数据 ,所以用组合关系,在人这个类里面组合身体数据这个类,来实现。
实现代码如下:
1> 身材数据
(1)属性
* 身高
* 体重
* 手长
* 脚长
(2)方法
* 属性相应的set和get方法
2> 人
(1)属性
* 年龄
* 身高
* 体重
* 手长
* 脚长
(2)方法
* 属性相应的set和get方法
思路:在这道题里面,人拥有一份 身材数据 ,所以用组合关系,在人这个类里面组合身体数据这个类,来实现。
实现代码如下:
// 身材数据@interface BodyData : NSObject{ int _height; // 身高 int _weight; //体重 int _handLength; // 手长 int _legLength; // 腿长}// 身高的getter和setter- (int)height;- (void)setHeight:(int)height;// 体重的getter和setter- (int)weight;- (void)setWeight:(int)weight;// 手长的getter和setter- (int)handLength;- (void)setHandLength:(int)handLength;// 腿长的getter和setter- (int)legLength;- (void)setLegLength:(int)legLength;@end@implementation BodyData// 身高的getter和setter- (int)height{ return _height;}- (void)setHeight:(int)height{ _height = height;}// 体重的getter和setter- (int)weight{ return _weight;}- (void)setWeight:(int)weight{ _weight = weight;}// 手长的getter和setter- (int)handLength{ return _handLength;}- (void)setHandLength:(int)handLength{ _handLength = handLength;}// 腿长的getter和setter- (int)legLength{ return _legLength;}- (void)setLegLength:(int)legLength{ _legLength = legLength;}@end// 人@interface Person : NSObject{ int _age; // 年龄 BodyData *_bodyData; // 身材数据}// _age的setter和getter- (void)setAge:(int)age;- (int)age;// _bodyData的setter和getter- (void)setBodyData:(BodyData *)bodyData;- (BodyData *)bodyData;@end//实现@implementation Person// _age的setter和getter- (void)setAge:(int)age{ _age = age;}- (int)age{ return _age;}// _bodyData的setter和getter- (void)setBodyData:(BodyData *)bodyData{ _bodyData = bodyData;}- (BodyData *)bodyData{ return _bodyData;}@endint main(){ Person *p = [Person new]; // 设置年龄 [p setAge:20]; // 设置身材数据 BodyData *b = [BodyData new]; [b setWeight:60]; [b setHeight:170]; [p setBodyData:b]; return 0;}
0 0
- 关于objective-c中类的组合
- Objective-C中关于类反射的实现
- Objective-C 中关于self的用法
- 【Objective-C】关于objective-c中的类的总结
- Objective-C的继承与组合
- Objective-C中继承中方法调度和组合的存取方法
- Objective C--组合模式
- Objective C 组合模式
- 关于Objective-C中常用的操作字符串的方法
- Objective-C中关于NSDictionary的一些常用的操作方法
- 关于objective-c中timer的简单使用
- Objective-C中关于数组操作常用的方法
- objective-c中关于协议protocol的一些理解
- objective-c中关于类型编码的解释
- 关于Objective-c 中私有方法的几点总结
- 关于objective c的@package
- 关于Objective-C的常量
- 关于C语言中*与++的组合问题解析
- 黑马程序员:C语言结构体(struct)
- PHP SPL,被遗落的宝石
- 偷偷mark下
- iOS 定位服务
- 2、使用instantcontiki2.7进行contiki开发-获取contiki-sensinode分支
- 关于objective-c中类的组合
- int main(int argc,char* argv[])详解
- Sort List
- 长帝烤箱怎么样好吗 长帝烤箱哪个型号好
- USTC邮箱填写表单并登陆
- 详解java中的volatile关键字
- 个人软件项目的心得
- POJ2386 简单的深搜
- POJ 2253 Frogger(Floyd)