中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

手機(jī)網(wǎng)站如何做新區(qū)快速seo排名

手機(jī)網(wǎng)站如何做,新區(qū)快速seo排名,專業(yè)的上海網(wǎng)站建設(shè)公司排名,網(wǎng)站建設(shè)課設(shè)報(bào)告文章目錄 前言一、介紹二、詳細(xì)分析1.核心組成2.實(shí)現(xiàn)步驟3.代碼示例4.優(yōu)缺點(diǎn)優(yōu)點(diǎn)缺點(diǎn) 5.使用場景 總結(jié) 前言 組合模式是將對(duì)象組合成樹形結(jié)構(gòu)來表現(xiàn)"整體/部分"層次結(jié)構(gòu),可以更好的實(shí)現(xiàn)管理操作。 一、介紹 組合設(shè)計(jì)模式又叫部分整體模式,將…

文章目錄

  • 前言
  • 一、介紹
  • 二、詳細(xì)分析
    • 1.核心組成
    • 2.實(shí)現(xiàn)步驟
    • 3.代碼示例
    • 4.優(yōu)缺點(diǎn)
      • 優(yōu)點(diǎn)
      • 缺點(diǎn)
    • 5.使用場景
  • 總結(jié)


前言

組合模式是將對(duì)象組合成樹形結(jié)構(gòu)來表現(xiàn)"整體/部分"層次結(jié)構(gòu),可以更好的實(shí)現(xiàn)管理操作。


一、介紹

組合設(shè)計(jì)模式又叫部分整體模式,將對(duì)象組合成樹形結(jié)構(gòu)來表現(xiàn)"整體/部分"層次結(jié)構(gòu),可以更好的實(shí)現(xiàn)管理操作。使用戶可以通過一致的方法操作單個(gè)對(duì)象或組合對(duì)象,整體和部分的基本操作多數(shù)都是一樣的,也會(huì)有不同的地方。組合模式可以用一棵樹來表示。

二、詳細(xì)分析

1.核心組成

  • 組合部件(Component):它是一個(gè)抽象接口,表示樹根;
  • 合成部件(Composite):和組合部件類似,也有自己的子節(jié)點(diǎn);
  • 葉子(Leaf):在組合中表示子節(jié)點(diǎn)對(duì)象,注意他是沒有子節(jié)點(diǎn)。
    公司底下有部門,部門底下有職位。以下所示:
    在這里插入圖片描述

2.實(shí)現(xiàn)步驟

  1. 創(chuàng)建組合部件,他是個(gè)抽象類,定義部件中的屬性和方法;
  2. 創(chuàng)建合成部件,繼承組合部件,創(chuàng)建集合屬性,用來管理葉子節(jié)點(diǎn);
  3. 創(chuàng)建葉子節(jié)點(diǎn),繼承組合部件,不能添加子節(jié)點(diǎn)。

3.代碼示例

組合部件

/*** 組合部件*/
public abstract class Company {private String job;public Company(String job) {this.job = job;}public String getJob() {return job;}public void setJob(String job) {this.job = job;}/*** 添加職位*/protected abstract void addJob(Company company);/*** 刪除職位*/protected abstract void removeJob(Company company);/*** 展示職位* @param depth 顯示層級(jí)*/protected abstract void display(int depth);}

合成部件

/*** 合成部件*/
public class Department extends Company {List<Company> companyList = new ArrayList<Company>();public Department(String job) {super(job);}@Overrideprotected void addJob(Company company) {companyList.add(company);}@Overrideprotected void removeJob(Company company) {companyList.remove(company);}@Overrideprotected void display(int depth) {StringBuffer str= new StringBuffer();for (int i=0;i<depth;i++){str.append("-");}// 輸出System.out.println(str.toString()+this.getJob());//子層級(jí)再加2for (Company company:companyList){company.display(depth+2);}}}

葉子節(jié)點(diǎn)

/*** 葉子節(jié)點(diǎn)*/
public class Job extends Company{public Job(String job) {super(job);}@Overrideprotected void addJob(Company company) {}@Overrideprotected void removeJob(Company company) {}@Overrideprotected void display(int depth) {StringBuffer str= new StringBuffer();for (int i=0;i<depth;i++){str.append("-");}// 輸出System.out.println(str.toString()+this.getJob());}
}

測(cè)試類:

    public static void main(String[] args) {// 創(chuàng)建根Company company = new Department("北京公司");// 創(chuàng)建部門節(jié)點(diǎn)Company dept = new Department("軟件開發(fā)部門");Company dept2 = new Department("軟件測(cè)試部門");Company dept3 = new Department("產(chǎn)品部門");// 創(chuàng)建葉子節(jié)點(diǎn)并添加至部門Company job= new Job("軟件開發(fā)經(jīng)理");Company job1 = new Job("軟件開發(fā)工程師");dept.addJob(job);dept.addJob(job1);Company job2 = new Job("軟件測(cè)試工程師");dept2.addJob(job2);Company job3 = new Job("產(chǎn)品經(jīng)理");dept3.addJob(job3);company.addJob(dept);company.addJob(dept2);company.addJob(dept3);company.display(0);}

結(jié)果
在這里插入圖片描述

4.優(yōu)缺點(diǎn)

優(yōu)點(diǎn)

  • 組合模式定義了一組統(tǒng)一的接口,可以用來處理單個(gè)對(duì)象和組合對(duì)象,從而簡化了客戶端代碼;
  • 組合模式使得可以很自然地將對(duì)象和它們的行為組織在一起,提高了代碼的內(nèi)聚性;
  • 新增加的葉節(jié)點(diǎn)類型或樹枝節(jié)點(diǎn)類型可以無縫集成到現(xiàn)有系統(tǒng)中,無需修改現(xiàn)有代碼;
  • 組合模式使得對(duì)象的添加和刪除變得容易,因?yàn)樗鼈兛梢越y(tǒng)一地被添加到樹形結(jié)構(gòu)中。

缺點(diǎn)

  • 客戶端需要花更更多時(shí)間理理清類之間的層次關(guān)系;
  • 組合模式要求所有葉子節(jié)點(diǎn)和樹枝節(jié)點(diǎn)都實(shí)現(xiàn)相同的接口,這可能限制了對(duì)象的靈活性。

5.使用場景

  • 當(dāng)想表達(dá)對(duì)象的部分-整體的層次結(jié)構(gòu),比如公司結(jié)構(gòu)、菜單、文件夾等等;
  • 當(dāng)我們的要處理的對(duì)象可以生成一顆樹形結(jié)構(gòu),我們要對(duì)樹上的節(jié)點(diǎn)和葉子進(jìn)行操作時(shí),它能夠提供一致的方式,而不用考慮它是節(jié)點(diǎn)還是葉子。

總結(jié)

以上就是本篇的內(nèi)容,本文簡單介紹了組合模式的組成、優(yōu)缺點(diǎn)、使用場景等,提供了代碼示例。

http://www.risenshineclean.com/news/34367.html

相關(guān)文章:

  • 滄州百度愛采購灰色詞seo推廣
  • 企業(yè)網(wǎng)站排名提升軟件能優(yōu)化谷歌排名推廣公司
  • 如何給網(wǎng)站做seo怎么制作網(wǎng)站?
  • 新鄭做網(wǎng)站佛山網(wǎng)站建設(shè)公司
  • 東莞公司注冊(cè)代理青島網(wǎng)站seo服務(wù)
  • 政務(wù)服務(wù)網(wǎng)站 建設(shè)方案百度競價(jià)開戶渠道
  • css做網(wǎng)站常用網(wǎng)站seo優(yōu)化服務(wù)
  • 微信小程序注冊(cè)需要多少錢南昌seo管理
  • 有贊可以做獨(dú)立網(wǎng)站嗎百度關(guān)鍵詞推廣多少錢
  • 電子商務(wù)書店網(wǎng)站設(shè)計(jì)實(shí)驗(yàn)競價(jià)排名的服務(wù)模式是
  • 通用網(wǎng)址查詢網(wǎng)站網(wǎng)絡(luò)營銷項(xiàng)目
  • 胖哥網(wǎng)站的建設(shè)目標(biāo)網(wǎng)絡(luò)廣告投放渠道有哪些
  • 成都網(wǎng)站制作公司湘潭網(wǎng)站設(shè)計(jì)
  • 3小時(shí)網(wǎng)站建設(shè)平臺(tái)seo診斷優(yōu)化方案
  • asp網(wǎng)站開發(fā)環(huán)境同仁seo排名優(yōu)化培訓(xùn)
  • 網(wǎng)站備案現(xiàn)狀網(wǎng)絡(luò)平臺(tái)建站
  • 使用wordpress版權(quán)深圳市seo上詞多少錢
  • 對(duì)網(wǎng)站備案的認(rèn)識(shí)網(wǎng)絡(luò)營銷的主要傳播渠道
  • 網(wǎng)站開發(fā)投入產(chǎn)出分析國際新聞最新消息戰(zhàn)爭
  • 網(wǎng)頁游戲傳奇霸主輔助寧波seo優(yōu)化公司排名
  • 濱州網(wǎng)站建設(shè)公司軍事新聞今日最新消息
  • 谷歌有做網(wǎng)站建設(shè)怎樣做推廣是免費(fèi)的
  • 外國人做的中國字網(wǎng)站推廣軟件的渠道有哪些
  • seo搜索引擎優(yōu)化興盛優(yōu)選寧波seo快速優(yōu)化平臺(tái)
  • 長治網(wǎng)站建設(shè)招聘聚合搜索引擎
  • 安徽省外經(jīng)建設(shè)集團(tuán)有限公司網(wǎng)站b站推廣
  • 樂山旅游英文網(wǎng)站建設(shè)班級(jí)優(yōu)化大師怎么下載
  • 網(wǎng)站建設(shè)的具體流程上海網(wǎng)站推廣廣告
  • 自建網(wǎng)站營銷是什么上海關(guān)鍵詞排名軟件
  • 杭州公司做網(wǎng)站周口seo推廣