前言
相信只要是学过java或者其他面向对象编程语言的伙伴们多少都听说过设计模式,比如可以说算是烂大街的mvc、单例模式都是其中之一。当然设计模式的家族很庞大,远远不止这些。那设计模式是用来干什么的呢?和我们平时开发的程序又有什么关系呢?我们应当如何去使用它呢?我会介绍23种经典的设计模式以供理解和学习。
继承
现在我列举一种日常开放过程中经常碰到的一个例子。小明是一个程序员,负责公司oa系统的开发。今天经理告诉他,需要给负责财务人员以及管理人员添加一个可以进行权限管理的功能。小明爽快的答应了。我们先看下小明原先的设计。
不同人员的行为都继承自person这个类,行为在person中都已实现,这样每个类复用时就不用重新再写一遍。小明依旧照着这个思路,在person这个父类中加入了manage这个方法。然后就变成了这样。
小明心想,直接在父类中写好实现,这样管理人员和