选择特殊符号

选择搜索类型

热门搜索

首页 > 百科 > 建设工程百科

组合模式或组合振动简介

组合模式或组合振动简介

组合模式或组合振动。},il}iriatior} rnodr:s。:c:}mbiri tiaiivi E}rativn、在红外光谱中通常出现很多的弱吸收,组合模式或组合振动系指对应于两个或多个基本振动频率之和起源,它的弱吸收于多原子分子振动态相坛作夕}J的振了的非i皆f'}与基频振动及倍频所引起的吸收相比,这些吸收是比r}弱的

2100433B

查看详情

组合模式或组合振动造价信息

  • 市场价
  • 信息价
  • 询价

电机振动

  • HV×006F产品编号:HV×006F;说明:24VDC;规格:亮架:h250HBC系列塑壳断路器附件;额定电流A:100A;极数:4P;
  • 海格
  • 13%
  • 上海迈驰电气有限公司
  • 2022-12-07
查看价格

电机振动

  • HV×015F产品编号:HV×015F;说明:400VAC;规格:亮架:h250HBC系列塑壳断路器附件;额定电流A:20A;极数:4P;
  • 海格
  • 13%
  • 上海迈驰电气有限公司
  • 2022-12-07
查看价格

电机振动

  • HV×031C产品编号:HV×031C;规格:亮架:h400HBC系列塑壳断路器附件;额定电流A:50A;极数:4P;
  • 海格
  • 13%
  • 上海迈驰电气有限公司
  • 2022-12-07
查看价格

电机振动

  • HV×043C产品编号:HV×043C;说明:400VAC;规格:亮架:h400HBC系列塑壳断路器附件;额定电流A:25A;极数:4P;
  • 海格
  • 13%
  • 上海迈驰电气有限公司
  • 2022-12-07
查看价格

电机振动

  • HV×006H产品编号:HV×006H;说明:24VDC;规格:亮架:h800HBC系列塑壳断路器附件路器附件;额定电流A:50A;极数:4P;
  • 海格
  • 13%
  • 上海迈驰电气有限公司
  • 2022-12-07
查看价格

组合烘箱

  • 台班
  • 汕头市2012年2季度信息价
  • 建筑工程
查看价格

组合烘箱

  • 台班
  • 汕头市2011年4季度信息价
  • 建筑工程
查看价格

组合烘箱

  • 台班
  • 汕头市2011年1季度信息价
  • 建筑工程
查看价格

组合烘箱

  • 台班
  • 广州市2010年3季度信息价
  • 建筑工程
查看价格

组合烘箱

  • 台班
  • 广州市2009年3季度信息价
  • 建筑工程
查看价格

组合立杆

  • 监控组合立杆,高度4米
  • 26套
  • 3
  • 高档
  • 不含税费 | 含运费
  • 2021-04-29
查看价格

组合立杆

  • 监控组合立杆,高度4米
  • 1套
  • 1
  • 国内一线品牌
  • 高档
  • 不含税费 | 含运费
  • 2021-01-22
查看价格

组合填料

  • 组合填料
  • 1517.92kg
  • 3
  • 中高档
  • 含税费 | 含运费
  • 2021-11-03
查看价格

组合立杆3.5米

  • 组合立杆3.5米
  • 8台
  • 1
  • 中高档
  • 不含税费 | 含运费
  • 2020-06-28
查看价格

组合桌椅

  • 组合桌椅
  • 7套
  • 3
  • 高档
  • 不含税费 | 含运费
  • 2022-06-15
查看价格

组合模式或组合振动简介常见问题

查看详情

组合模式或组合振动简介文献

特色小镇基础设施融资的项目组合模式研究——基于Markowitz组合投资最优化模型 特色小镇基础设施融资的项目组合模式研究——基于Markowitz组合投资最优化模型

特色小镇基础设施融资的项目组合模式研究——基于Markowitz组合投资最优化模型

格式:pdf

大小:137KB

页数: 未知

特色小镇是我国城镇化进程中的创新实践,完善配套基础设施建设有利于推进其良性发展。但是特色小镇有别于一般意义上的小城镇,在基础设施建设方面与一般城镇存在一定差异。据此,本文以Markowitz组合投资最优化模型为基础,提出适合于特色小镇的基础设施融资的项目组合模式,推进特色小镇的创新实践。

企业项目组合管理模式研究 企业项目组合管理模式研究

企业项目组合管理模式研究

格式:pdf

大小:137KB

页数: 1页

项目组合管理是一种新的管理思想,它是随着社会和项目管理的不断发展而产生的,本文将项目组合管理与项目管理进行对比,显示出项目组合管理具有明显的优势。根据项目组合管理的特点,本文构建了项目组合管理流程模型,并对各阶段进行了阐述。

组合模式组合模式概述

组合模式(Composite Pattern)

组合模式使得用户对单个对象和组合对象的使用具有一致性。

有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以像处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。

组合模式让你可以优化处理递归或分级数据结构。有许多关于分级数据结构的例子,使得组合模式非常有用武之地。关于分级数据结构的一个普遍性的例子是你每次使用电脑时所遇到的:文件系统。文件系统由目录和文件组成。每个目录都可以装内容。目录的内容可以是文件,也可以是目录。按照这种方式,计算机的文件系统就是以递归结构来组织的。如果你想要描述这样的数据结构,那么你可以使用组合模式Composite。

定义

(GoF《设计模式》):将对象组合成树形结构以表示“部分整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。

涉及角色:

1.Component 是组合中的对象声明接口,在适当的情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理Component子部件。

2.Leaf 在组合中表示叶子结点对象,叶子结点没有子结点。

3.Composite 定义有枝节点行为,用来存储子部件,在Component接口中实现与子部件有关操作,如增加(add)和删除(remove)等。

适用性

以下情况下适用Composite模式:

1.你想表示对象的部分-整体层次结构

2.你希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象。

查看详情

组合模式总结

组合模式解耦了客户程序与复杂元素内部结构,从而使客户程序可以像处理简单元素一样来处理复杂元素。

如果你想要创建层次结构,并可以在其中以相同的方式对待所有元素,那么组合模式就是最理想的选择。本章使用了一个文件系统的例子来举例说明了组合模式的用途。在这个例子中,文件和目录都执行相同的接口,这是组合模式的关键。通过执行相同的接口,你就可以用相同的方式对待文件和目录,从而实现将文件或者目录储存为目录的子级元素。

查看详情

组合模式示例

基于Java的样例:

比如现实中公司内各部门的层级关系

抽象接口类:

package com.zyh.designpattern.composite;

public abstract class Company {

private String name;

public Company(String name) {

super();

this.name = name;

}

public Company(){}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

protected abstract void add(Company company);

protected abstract void romove(Company company);

protected abstract void display(int depth);

}

枝结点类:

package com.zyh.designpattern.composite;

import java.util.ArrayList;

import java.util.List;

public class ConcreteCompany extends Company {

private List cList;

public ConcreteCompany() {

cList = new ArrayList();

}

public ConcreteCompany(String name) {

super(name);

cList = new ArrayList();

}

@Override

protected void add(Company company) {

// TODO Auto-generated method stub

cList.add(company);

}

@Override

protected void display(int depth) {

// TODO Auto-generated method stub

StringBuilder sb = new StringBuilder("");

for (int i = 0; i < depth; i ) {

sb.append("-");

}

System.out.println(new String(sb) this.getName());

for (Company c : cList) {

c.display(depth 2);

}

}

@Override

protected void romove(Company company) {

// TODO Auto-generated method stub

cList.remove(company);

}

}

两个叶结点类:

------------------------- 1---------------------------.

package com.zyh.designpattern.composite;

public class HRDepartment extends Company {

public HRDepartment(String name) {

super(name);

}

@Override

protected void add(Company company) {

}

@Override

protected void display(int depth) {

// TODO Auto-generated method stub

StringBuilder sb = new StringBuilder("");

for (int i = 0; i < depth; i ) {

sb.append("-");

}

System.out.println(new String(sb) this.getName());

}

@Override

protected void romove(Company company) {

}

}

----------------2-------------------

package com.zyh.designpattern.composite;

public class FinanceDepartment extends Company {

public FinanceDepartment(String name) {

super(name);

}

@Override

protected void add(Company company) {

}

@Override

protected void display(int depth) {

// TODO Auto-generated method stub

StringBuilder sb = new StringBuilder("");

for (int i = 0; i < depth; i ) {

sb.append("-");

}

System.out.println(new String(sb) this.getName());

}

@Override

protected void romove(Company company) {

}

}

客户端:

package com.zyh.designpattern.composite;

public class Client {

public static void main(String[] args) {

// TODO Auto-generated method stub

Company root = new ConcreteCompany();

root.setName("北京总公司");

root.add(new HRDepartment("总公司人力资源部"));

root.add(new FinanceDepartment("总公司财务部"));

Company shandongCom = new ConcreteCompany("山东分公司");

shandongCom.add(new HRDepartment("山东分公司人力资源部"));

shandongCom.add(new FinanceDepartment("山东分公司账务部"));

Company zaozhuangCom = new ConcreteCompany("枣庄办事处");

zaozhuangCom.add(new FinanceDepartment("枣庄办事处财务部"));

zaozhuangCom.add(new HRDepartment("枣庄办事处人力资源部"));

Company jinanCom = new ConcreteCompany("济南办事处");

jinanCom.add(new FinanceDepartment("济南办事处财务部"));

jinanCom.add(new HRDepartment("济南办事处人力资源部"));

shandongCom.add(jinanCom);

shandongCom.add(zaozhuangCom);

Company huadongCom = new ConcreteCompany("上海华东分公司");

huadongCom.add(new HRDepartment("上海华东分公司人力资源部"));

huadongCom.add(new FinanceDepartment("上海华东分公司账务部"));

Company hangzhouCom = new ConcreteCompany("杭州办事处");

hangzhouCom.add(new FinanceDepartment("杭州办事处财务部"));

hangzhouCom.add(new HRDepartment("杭州办事处人力资源部"));

Company nanjingCom = new ConcreteCompany("南京办事处");

nanjingCom.add(new FinanceDepartment("南京办事处财务部"));

nanjingCom.add(new HRDepartment("南京办事处人力资源部"));

huadongCom.add(hangzhouCom);

huadongCom.add(nanjingCom);

root.add(shandongCom);

root.add(huadongCom);

root.display(0);

}

}

基于C 的样例:

//Menu.h

#include

class Menu

{

public:

virtual ~Menu();

virtual void Add(Menu*);

virtual void Remove(Menu*);

virtual Menu* GetChild(int);

virtual void Display() = 0;

protected:

Menu();

Menu(std::string);

std::string m_strName;

};

//Menu.cpp

#include "stdafx.h"

#include "Menu.h"

Menu::Menu()

{

}

Menu::Menu(std::string strName) : m_strName(strName)

{

}

Menu::~Menu()

{

}

void Menu::Add(Menu* pMenu)

{}

void Menu::Remove(Menu* pMenu)

{}

Menu* Menu::GetChild(int index)

{

return NULL;

}

//SubMenu.h

#include "Menu.h"

class SubMenu : public Menu

{

public:

SubMenu();

SubMenu(std::string);

virtual ~SubMenu();

void Display();

};

//SubMenu.cpp

#include "stdafx.h"

#include "SubMenu.h"

#include

using namespace std;

SubMenu::SubMenu()

{

}

SubMenu::SubMenu(string strName) : Menu(strName)

{

}

SubMenu::~SubMenu()

{

}

void SubMenu::Display()

{

cout << m_strName << endl;

}

//CompositMenu.h

#include "Menu.h"

#include

class CompositMenu : public Menu

{

public:

CompositMenu();

CompositMenu(std::string);

virtual ~CompositMenu();

void Add(Menu*);

void Remove(Menu*);

Menu* GetChild(int);

void Display();

private:

std::vector m_vMenu;

};

//CompositMenu.cpp

#include "stdafx.h"

#include "CompositMenu.h"

#include

using namespace std;

CompositMenu::CompositMenu()

{

}

CompositMenu::CompositMenu(string strName) : Menu(strName)

{

}

CompositMenu::~CompositMenu()

{

}

void CompositMenu::Add(Menu* pMenu)

{

m_vMenu.push_back(pMenu);

}

void CompositMenu::Remove(Menu* pMenu)

{

m_vMenu.erase(&pMenu);

}

Menu* CompositMenu::GetChild(int index)

{

return m_vMenu[index];

}

void CompositMenu::Display()

{

cout << " " << m_strName << endl;

vector ::iterator it = m_vMenu.begin();

for (; it != m_vMenu.end(); it)

{

cout << "|-";

(*it)->Display();

}

}

#include "stdafx.h"

#include "Menu.h"

#include "SubMenu.h"

#include "CompositMenu.h"

int main(int argc, char* argv[])

{

Menu* pMenu = new CompositMenu("国内新闻");

pMenu->Add(new SubMenu("时事新闻"));

pMenu->Add(new SubMenu("社会新闻"));

pMenu->Display();

pMenu = new CompositMenu("国际新闻");

pMenu->Add(new SubMenu("国际要闻"));

pMenu->Add(new SubMenu("环球视野"));

pMenu->Display();

return 0;

}2100433B

查看详情

相关推荐

立即注册
免费服务热线: 400-888-9639