设计模式分析

聚合,层次设计模式:适用于层次关系
例子:
public class Fee
{
    
private float valuee = 0;
    
    
public string GetName()
    {
        
//返回费用的名称
    }
    
    
public bool HasChildren()
    {
        
//该费用类型是否有子类型
    }
    
    
public Fee[] GetChildren()
    {
        
//返回该费用类型的子类型
    }
    
    
public float GetValue()
    {
        
//返回费用的金额
        if (HasChildren())
        {
            
float f = 0;
            Fee[] children 
= GetChildren();
            
for (int i = 0; i < children.Length; i ++)
            {
                f 
+= children[i].GetValue();
            }
            
return f;
        }
        
else
        {
            
return valuee;
        }
    }
}

组合模式可以很精确的反映销售网点间的聚合关系,并且对查询和统计提供了非常一致的接口,调用者不必区分具体的网点类型。类似这样的情况,当我们发现需求中一些对象具有聚合关系,并且我们希望对他们做一些共同的事情,就可以采用组合模式。


转载于:https://www.cnblogs.com/yanglin/archive/2007/10/24/935625.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/497014.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dos命令、find、findstr、ping、nbtstat、netstat、net、at、ftp、telnet、tasklist、taskkill、netsh

DOS 在线手册&#xff1a;http://www.shouce.ren/api/dos/ DOS 命令学习手册 ( DOS W3School 教程 )&#xff1a;https://www.w3cschool.cn/dosmlxxsc1/ cmd命令&#xff1a; &#xff1a;http://wenku.baidu.com/view/5ecce91452d380eb62946da8.html&#xff1a;http://wenku…

重磅!中国科学家最新医学AI成果荣登《细胞》杂志

作者&#xff1a;李雨晨概要&#xff1a;在今天出版的最新一期《细胞》上&#xff0c;华人学者张康教授的研究荣登杂志封面。他们带来的&#xff0c;是一款能精确诊断多种疾病的人工智能工具。医学人工智能领域又有大新闻。在今天出版的最新一期《细胞》上&#xff0c;华人学者…

2017全球教育机器人行业研究报告(附PDF下载)

来源&#xff1a; 起点财经 概要&#xff1a;伴随着全球化市场激烈竞争及高科技日新月异的发展&#xff0c;美、日、韩、欧、中等国家逐渐将智能机器人作为战略新兴产业发展不可缺少的创新技术支撑。伴随着全球化市场激烈竞争及高科技日新月异的发展&#xff0c;美、日、韩、…

从零开始——PowerShell应用入门(全例子入门讲解)

From&#xff1a;https://www.cnblogs.com/lavender000/p/6935589.html PowerShell 在线教程&#xff1a;https://www.pstips.net/powershell-online-tutorials 微软 PowerShell 官方文档&#xff1a;https://docs.microsoft.com/zh-cn/powershell/ 学习一门技术&#xff0c;…

时空大数据赋能智慧城市的思考和实践

来源&#xff1a; 超图集团时空大数据和新型智慧城市是当下地信产业的两大热词&#xff0c;这两者的奇妙关联将擦出怎样精彩的火花&#xff1f;时空大数据如何赋能城市智能与城市智慧&#xff0c;让智慧城市建设迈上新的高度&#xff1f;2月6日至7日&#xff0c;由中国地理信息…

linux 命令:nc、netcat、ncat、socat

参考 &#xff1a;http://www.linuxso.com/command/nc.html NC工具的使用说明教程&#xff1a;https://blog.csdn.net/xysoul/article/details/52270149 window 版本 nc 下载&#xff1a;https://eternallybored.org/misc/netcat/ 1、nc、ncat 简介 NC 全名 Netcat (网络刀)&…

关于GPS 车辆定位导航中的投影变换

GPS 采用 WGS-84 椭球地理坐标, 用经、纬度和大地系来表示3 维空间信息。因此,GPS 车辆定位导航监控中心接收到的只是经、纬度信息, 必须通过高斯投影将其转换成高斯坐标。转换公式如下:转载于:https://www.cnblogs.com/kaixin110/archive/2007/12/11/990851.html

Linux下查看系统版本号信息的方法

From&#xff1a;https://linux.cn/article-9586-1.html 如果你加入了一家新公司&#xff0c;要为开发团队安装所需的软件并重启服务&#xff0c;这个时候首先要弄清楚它们运行在什么发行版以及哪个版本的系统上&#xff0c;你才能正确完成后续的工作。作为系统管理员&#xff…

人工智能的恶意用途:预测、预防和缓解

来源&#xff1a; 新浪科技编译一份由26名专家联合撰写的报告&#xff0c;对人工智能技术的潜在威胁发出警告。他们认为&#xff0c;这项技术可能在未来5到10年催生新型网络犯罪、实体攻击和政治颠覆。这份100页的报告标题为《人工智能的恶意用途&#xff1a;预测、预防和缓解》…

CSS使用总结

在分配ID和类名时&#xff0c;尽可能保持与表现形式无关&#xff0c;例如contleft有可能以后希望出现在右边。 尽量少使用类,因为可以层叠识别,如: .News h3而不必在h3上加类<div class”News”> <h3></h3> <h2></h2> <p></p> <…

linq 关联查询

可得会在以后的实体类中能用到usingSystem;usingSystem.Collections;usingSystem.Configuration;usingSystem.Data;usingSystem.Linq;usingSystem.Web;usingSystem.Web.Security;usingSystem.Web.UI;usingSystem.Web.UI.HtmlControls;usingSystem.Web.UI.WebControls;usingSyst…

DeepMind提出「心智神经网络ToMnet」,训练机器的「理解」能力

原文来源&#xff1a;arXiv作者&#xff1a;Neil C. Rabinowitz、Frank Perbet、H. Francis Song、Chiyuan Zhang、S. M. Ali Eslami、Matthew Botvinick「雷克世界」编译&#xff1a;嗯~阿童木呀、KABUDA一般来说&#xff0c;心智理论&#xff08;ToM&#xff0c;Premack和Woo…

华为正式发布5G商用芯片、5G终端!

来源:&#xff1a;5G概要&#xff1a;5G网络和5G终端是5G商用的两个基础条件。重大信息未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能&#xff0c;互联网和脑科学交叉研究机构。由互联网进化论作者&#xff0c;计算机博士刘锋与中国科学院虚拟经济与数据科学…

linux 命令:grep、egrep、ngrep、kill、pkill、killall

1、grep 帮助&#xff1a;grep --help 用法&#xff1a;grep [OPTION]...patterns[FILE]... 示例&#xff1a;grep -i hello world menu.h main.c // 在每个 FILE 中搜索 patterns。 当 FILE 为 - 时&#xff0c;读取标准输入。 没有 FILE&#xff0c;读 . 参数说明&…

Gartner2018年大数据平台魔力象限:华为位置提升,阿里云和南大通用入围

来源&#xff1a;云头条概要&#xff1a;Gartner近日发布了2018年版面向分析的数据管理解决方案魔力象限。Gartner近日发布了2018年版面向分析的数据管理解决方案魔力象限。 Gartner特别指出&#xff0c;由于某些因素变得明朗化&#xff0c;具体来说涉及云计算、Hadoop逻辑数据…

sql server 2005 T-SQL BULK INSERT (Transact-SQL)

以用户指定的格式将数据文件导入数据库表或视图。 Transact-SQL 语法约定 语法 BULK INSERT [ database_name . [ schema_name ] . | schema_name . ] [ table_name | view_name ] FROM data_file [ WITH ( [ [ , ] BATCHSIZE batch_size ] [ [ , ] CHECK_CONSTRAINTS ] [ [ …

图表对比详解:亚马逊、微软和谷歌云的机器学习即服务哪家强

林鳞 编译自 KDnuggets量子位 出品 | 公众号 QbitAI对于大多数公司来说&#xff0c;机器学习是一项复杂而伤神的工作&#xff0c;花销大、对人才要求高。机器学习即服务针对这个痛点应运而生。什么是“机器学习即服务”机器学习即服务&#xff08;Machine learning as a servic…

Wing IDE 5.0 破解之寻找注册码

来源&#xff1a;http://bbs.pediy.com/showthread.php?p1253653 一&#xff0e; 工具&#xff1a; 1. uncompyle2 2. IDA Pro 6.1 3. WingIDE 5.0本身 二&#xff0e; 工具安装 1. 安装Python2.7 2. 安装WinIDE 5.0 3. 解压uncompyle2&#xff0c;进入解压目录&#…

深度|麦肯锡176页报告!解读数字中国领先全球的秘密

来源&#xff1a; 前瞻产业研究院2017年12月4日&#xff0c;麦肯锡发布了长达176页的中国数字经济报告。报告显示&#xff0c;中国电子商务&#xff08;2016年交易额占全球40%&#xff09;和数字支付&#xff08;2016年个人消费交易额交易额7900亿美元&#xff0c;是美国的11倍…

浅谈Springboot默认logger函数的使用

目录 前言1. logger日志2. 补充 前言 原先写过一篇logger日志函数的总结&#xff0c;不同的引用来源&#xff1a;java常见log日志的使用方法详细解析 但是为了不引入依赖包&#xff0c;更好的直接使用&#xff0c;总结了如下博文 1. logger日志 Spring Boot使用Spring框架中…