| >
既然动物之间的差别在于“运动方式”,并且“everything is an object”,所以我们找出了变化的东西:“运动方式”,然后把它封装起来!!
试想,后来又添加的一种动物:鱼,它的运动方式是“游(swim)”,我们只用从AnimalMovement继承出来一个AnimalSwim运动方式就OK了,我还可以通过Animal类的接口控制所有的动物!如果是前两种设计呢?switch….重复代码…
"Find what varies and encapsulate it."
上一页 [1] [2] |