首页 > 代码库 > 设计模式
设计模式
把模式装入脑子,然后在自己的设计和已有的应用中,寻找何处可以使用它们。以往是代码的复用,而设计模式是经验的复用。
1. 策略模式定义了算法簇,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。
对于鸭子问题:一般的鸭子都会游泳和展现自己的外貌。 橡皮鸭不会飞,但会吱吱叫。 木头鸭不会飞也不会叫。
解决办法:a. 使用继承:让鸭子都具有这些行为显然不合适。
b. 利用接口:只有会飞的鸭子才继承Flyable接口,但Java接口不具有代码的实现,不能达到代码的复用。(这意味着在每个实现类中都要追踪Flyable接口方法的实现,可能会造成新的错误)。
c. 此处将鸭子中不变的swim和display两个不变的部分和飞行与叫的两个行为分开。(受设计原则a影响)
设计原则:
a.将应用中可变的和不变的分离开。(所有设计模式的核心:将不变的和变的分离开,使得变的部分不会影响其他部分)。
b.针对接口编程,而不是实现。
设计模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。