Objective-C学习笔记第五章复合
来源:互联网 发布:照片动画制作软件 编辑:程序博客网 时间:2024/04/27 23:17
第五章复合
一、什么是复合composition
编程中的复合就好像音乐中多个乐器组合在一起使用
在Objective-C中,复合是通过包含作为实例变量的对象指针实现的
举例代码:Unicycle类中拥有一个指向Pedal对象的指针和一个指向Tire对象的指针
@interface Unicycle : NSObject
{
Pedal *pedal;
Tire *tire;
}
@end // Unicycle
我们可以说Pedal和Tire通过复合的方式组成了Unicycle
严格的讲,对象间的组合才叫复合,int、float、enum和struct等基本类型都被认为是对象的一部分
二、存取方法accessor method
存取方法是用来读取或改变对象特定属性的方法,即专门为类中成员变量赋值的方法
在对其他对象的属性进行操作时,应始终使用对象所提供的存取方法,永远不直接改变其他对象属性的数值
举例代码:
@interface Car : NSObject
{
Engine *engine;
Tire *tires[4];
}
-(Engine *) engine; Engine对象的getter
-(void) setEngine:(Engine *) newEngine; Engine对象的setter
-(Tire *) tireAtIndex :(int) index; Tire对象的getter
-(void) setTire : (Tire *)tire Tire对象的setter,需要序号参数
atIndex :(int)index;
-(void) print;
@end//Car
setter方法通常根据更改的属性前加上前缀set来命名
getter方法则仅仅根据其返回的属性的名称命名
因为get在Cocoa中有特殊的含义,使用get意味着这个方法会通过你当做参数传入 的指针来返回数值,这意味着使用get开头的方法传入的通常都是指针
三、复合还是继承
何时用继承,何时用复合呢?
继承在对象间建立了is a关系
复合建立的has a关系
- Objective-C学习笔记第五章复合
- objective-c学习笔记第五章《objective-c 继承与java中的区别》
- [学习笔记—Objective-C]《Objective-C 程序设计 第6版》第五章 循环结构 部分例题&课后题讲解
- effective objective-c 2.0 笔记 第五章 :内存管理
- objective-c 复合
- Objective-C 程序设计 第五章
- objective-c学习笔记第八章《objective-c 一些特性》
- Objective-C学习笔记
- Objective-C 学习笔记
- Objective-C学习笔记
- objective c 学习笔记
- Objective-C 学习笔记
- Objective-C学习 笔记
- Objective-c学习笔记
- Objective-c学习笔记
- Objective-C 学习笔记
- Objective C 学习笔记
- Objective-C学习笔记
- 【引用】Objective-C 的 self 和 super 详解
- Objective-C学习笔记第一章启程
- Objective-C学习笔记第二章对C的扩展
- Objective-C学习笔记第三章面向对象编程
- Objective-C学习笔记第四章继承
- Objective-C学习笔记第五章复合
- Objective-C学习笔记第六章原文件组织
- Objective-C学习笔记第七章深入了解Xcode
- Objective-C学习笔记第八章Foundation Kit快速教程
- Objective-C学习笔记第九章内存管理
- 是发给但是否会房管局话费卡
- Objective-C学习笔记第十章对象初始化
- 安装RAC执行root.sh报错解决
- Objective-C学习笔记第十一章特性