黑马程序员技术交流社区
标题: 对象关系--关联 [打印本页]
作者: wjy0916 时间: 2015-9-21 22:13
标题: 对象关系--关联
关联关系
当 B 对象作为 A 对象的成员变量时,B 与 A 之间存在一种关联关系。
关联关系是面向对象中最常用的一种关系,耦合度高于依赖关系
创建iPod类和Person类
iPod.h
@interface iPod : NSObject
{
NSString * _name;
}
//封装_name成员变量
-(void)setName:(NSString *) name;
-(NSString *)name;
//声明播放音乐方法
-(void)playMusic;
@end
iPod.m
@implementation iPod
-(void)setName:(NSString *) name{
_name = name;
}
-(NSString *)name{
return _name;
}
-(void)playMusic{
NSLog(@"\n%@播放歌曲----------------------------------",_name);
}
@end
Person.h
#import "iPod.h"
@interface Person : NSObject
{
NSString * _name;
//iPod对象作为 Person的成员变量
iPod *_ipod;
}
//封装_name成员变量
-(void)setName:(NSString *) name;
-(NSString *)name;
//封装_iPod成员变量
-(void)setIpod:(iPod *) ipod;
-(iPod *)ipod;
-(void) listenMusic;
@end
Person.m
@implementation Person
-(void)setName:(NSString *) name{
_name = name;
}
-(NSString *)name{
return _name;
}
//实现成员变量_ipod的封装
-(void)setIpod:(iPod *) ipod{
_ipod = ipod;
}
-(iPod *)ipod{
return _ipod;
}
-(void) listenMusic{
//调用成员变量 _ipod 的 playMusic方法
[_ipod playMusic];
}
@end
main.m
iPod * ipod = [iPod new];
[ipod setName:@"iPod5"];
Person *person = [Person new];
[person setName:@"小李"];
//给person对象的ipod成员变量赋值
[person setIpod:ipod];
[person listenMusic];
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |