设计模式大总结(一):组合模式

来源:互联网 发布:迅游加速器mac版 编辑:程序博客网 时间:2024/09/21 06:36

前言

一不小心博客就已经停了8天了,为什么这么一不小心呢?

1、工作中遇到了一些比较蛋疼的难题。
2、最近这几天都在看Java Web开发。
3、懒,也不知道写什么。

于是想总结一下工作中对设计模式的理解和总结,今天就是开篇的:组合模式。

正文

组合模式听起来非常好理解,就是小时候我们搭积木,组装个四驱车这些东西。

直接举个栗子:

/*** 男人*/public class Man{    ...}/*** 女人*/public class Women{    ...}

现在我们有这两个类,里面实现了很多重要的方法,突然伟大的产品对我说,我要增加一个Family类:

/*** 家庭*/public class Family{    private Man man;    private Women women;     public void work(){        man.work();    }    public void cook(){        women.work();    }    ...}

家庭就是有男人和女人组成,这就是典型的组合模式,再举个栗子,现在商品大促销,套装买更合适:

/*** 产品1*/public class Product1{    ...}/*** Product2*/public class Product2{    ...}/*** 套装*/public class Suit{    private Product1 product1;    private Product2 product2;     ...}

组合模式在工作中,真的是经常遇到,大家都应该是见怪不怪了。

总结

其实组合模式我本来是想略过的,但是为了下一篇的代理模式和组合模式的对比,所以写了这篇,总结一下就是:

组合模式:把已经定义好的一个或多个类组合成一个新的类。

下一篇一起来看看代理模式,聊一聊他俩的区别。

原创粉丝点击