黑马程序员技术交流社区
标题:
一个关于OC组合的问题
[打印本页]
作者:
Hi围城
时间:
2014-3-24 12:47
标题:
一个关于OC组合的问题
本帖最后由 Hi围城 于 2014-3-24 17:05 编辑
/*
2.设计2个类,类之间的关系自拟(比如继承、组合)
1> 身材数据
(1)属性
* 身高
* 体重
* 手长
* 脚长
(2)方法
* 属性相应的set和get方法
2> 人
(1)属性
* 年龄
* 身高
* 体重
* 手长
* 脚长
(2)方法
* 属性相应的set和get方法
*/
#import <Foundation/Foundation.h>
@interface ShenCai : NSObject
{
double _height;
int _weight;
int _shouChang;
int _jiaoChang;
}
- (void)setHeight:(double)height;
- (double)height;
- (void)setWeight:(int)weight;
- (int)weight;
- (void)setShouChang:(int)shouChang;
- (int)shouChang;
- (void)setJiaoChang:(int)jiaoChang;
- (int)jiaoChang;
@end
@implementation ShenCai
- (void)setHeight:(double)height
{
_height = height;
}
- (double)height
{
return _height;
}
- (void)setWeight:(int)weight
{
_weight = weight;
}
- (int)weight
{
return _weight;
}
- (void)setShouChang:(int)shouChang
{
_shouChang = shouChang;
}
- (int)shouChang
{
return _shouChang;
}
- (void)setJiaoChang:(int)jiaoChang
{
_jiaoChang = jiaoChang;
}
- (int)jiaoChang
{
return _jiaoChang;
}
@end
@interface Person : NSObject
{
ShenCai *_sc;
int _age;
}
- (void)setAge:(int)age;
- (int)age;
- (void)setSc:(ShenCai *)sc;
- (ShenCai *)sc;
@end
@implementation Person
- (void)setAge:(int)age
{
_age = age;
}
- (int)age
{
return _age;
}
- (void)setSc:(ShenCai *)sc
{
_sc = sc;
}
- (ShenCai *)sc
{
return _sc;
NSLog(@"%f", _sc->_height);
}
@end
int main()
{
Person *p = [Person new];
ShenCai *p1 = [ShenCai new];
[p1 setWeight:48];
[p1 setHeight:168];
[p1 setJiaoChang:90];
[p setSc:p1];
[p sc];
//如何输出[p sc]?
return 0;
}
//请问如何输出Person的ShenCai属性?
复制代码
作者:
周宇华
时间:
2014-3-24 13:12
代码如下:
NSLog(@"height = %f", [[p sc] height]);
NSLog(@"weight = %d", [[p sc] weight]);
NSLog(@"shouChang = %d", [[p sc] shouChang]);
NSLog(@"jiaoChang = %d", [[p sc] jiaoChang]);
复制代码
作者:
Hi围城
时间:
2014-3-24 17:05
Thank you!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2