国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當前位置: 首頁 > news >正文

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

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

文章目錄

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


前言

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


一、介紹

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

二、詳細分析

1.核心組成

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

2.實現(xiàn)步驟

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

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 顯示層級*/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());//子層級再加2for (Company company:companyList){company.display(depth+2);}}}

葉子節(jié)點

/*** 葉子節(jié)點*/
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());}
}

測試類:

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

優(yōu)點

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

缺點

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

5.使用場景

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

總結(jié)

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

http://aloenet.com.cn/news/34367.html

相關(guān)文章:

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