OOD沉思录 之 类和对象的关系--使用关系
使用关系 对象A的方法MethodA使用了B的方法MethodB,则表示A对B存在使用关系 方案一:
class 汽车 { 加油站 m_加油站; 加油(...) { //调用某加油站的加油方法 m_加油站.加油(); } } 那么关键问题在于,汽车如何知道加油站X? 方案二: class 汽车 { 加油(加油站 X) { X.加油(); } }
通过一个第三方类来获得加油站,如地图类,则汽车的定义如下:
class 汽车 { 加油() { 加油站 X=地图.查找一个加油站(); X.加油(); } }
class 汽车 { 加油() { 加油站.TheInstance.加油(); } } 这种情况就是单件模式的例子,还记得它吗?
class 汽车 { 加油() { 加油站 X=new 加油站(); X.加油(); delete X; } }
方案六: class 汽车 { string 加油站名="XX加油站"; 加油() { 加油站 X=企业黄页.查找(加油站名); X.加油(); } } 这种方案,在有的地方叫弱引用,汽车并不直接包含加油站,但是包含加油站的一个标示 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |