思考并回答以下问题:
桥接模式
思考并回答以下问题:
- 桥接模式为什么是结构型模式?
- 某个类存在两个独立变化的维度,用毛笔和蜡笔怎么举例?
- 型号可认为是毛笔的抽象部分,而颜色是毛笔的实现部分。怎么理解?
- 任意组合子类,从而获得多维度组合对象。怎么理解?
- 桥接模式和适配器模式用于设计的不同阶段,桥接模式用于系统的初步设计,对于存在两个独立变化维度的类可以将其分为抽象化和实现化两个角色,使它们可以分别进行变化;而在初步设计完成之后,当发现系统与已有类无法协同工作时,可以采用适配器模式。但有时在设计初期也需要考虑适配器模式,特别是那些涉及大量第三方应用接口的情况。怎么理解?
- 用抽象关联来取代传统的多层继承,将类之间的静态继承关系转换为动态的对象组合关系。原来的多层继承是怎么写的?存在什么问题?怎么用桥接模式取代?
- 将它们设计为两个独立的继承等级结构,为两个维度都提供抽象层,并建立抽象耦合。怎么做到?
- 可以针对两个维度的抽象层编程,在程序运行时再动态地确定两个维度的子类,动态地组合对象。怎么理解?