-
什么是组合查看全部
-
多用组合少用继承查看全部
-
接上查看全部
-
接上查看全部
-
抽象方法优缺点查看全部
-
接上查看全部
-
继承实现的优缺点 不能实现不同鸭子不同的飞行查看全部
-
鸭子应用的更新需求查看全部
-
1查看全部
-
接上查看全部
-
什么是策略模式查看全部
-
什么是策略模式查看全部
-
(2)多用组合,少用继承。查看全部
-
思考!!! 面向接口编程,而不是面向实现编程。查看全部
-
一生二,二生三,三生无穷 策略模式,可复用、又可变更。 策略模式中的设计原则, 1、组合一个策略对象,将飞行行为代理给该对象的实现 交由飞行策略接口,由飞行实现去完成 FlyStragedy:FlyWithRocket、FlyNoWay、FlyWithWing(多态) 2、面向接口,而不是面向工程实现 接口提供契约,规范总体框架 3、多用组合,少用继承 策略模式的实现要点: 1、分离变化,得出策略接口; 2、写出多个该接口的实现类; 3、客户程序持有一个策略接口; 4、在客户程序中选择/组装正确的策略实现(注入)。 优点: 1、使用组合,架构更加灵活; 2、富有弹性,可较好地应对变化(开闭原则); 3、更换的代码复用性(相对于继承); 4、消除大量的条件语句,可读性,面向对象易于维护。 缺点: 1、客户代码需要了解每个策略实现的细节; 每个客户代码都需要注入一个策略实现。 2、增加了对象的数目,要写多个实现类,增加了维护的困难。 适用场景: 1、许多相关的类仅仅是行为差异; 2、运行时选取不同的算法变体; 3、通过调节语句在多个分支选取其一。查看全部
举报
0/150
提交
取消