軟件設(shè)計(jì)師案例分析當(dāng)天每日一練試題地址:m.xiexiliangjiufa.com/exam/ExamDayAL.aspx?t1=4
往期軟件設(shè)計(jì)師每日一練試題匯總:m.xiexiliangjiufa.com/class/27/e4_1.html
軟件設(shè)計(jì)師案例分析每日一練試題(2025/2/11)在線測(cè)試:m.xiexiliangjiufa.com/exam/ExamDayAL.aspx?t1=4&day=2025/2/11
點(diǎn)擊查看:更多軟件設(shè)計(jì)師習(xí)題與指導(dǎo)
軟件設(shè)計(jì)師案例分析每日一練試題內(nèi)容(2025/2/11)
試題六
閱讀下列說明和Java代碼,將應(yīng)填入 (n) 處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)。
[說明]
現(xiàn)欲構(gòu)造一文件/目錄樹,采用組合(Composite)設(shè)計(jì)模式來設(shè)計(jì),得到的類圖如下圖所示:
[Java代碼]
import java.util.ArrayLiSt;
import java.util.List;
(1) class AbstractFile {
protected String name;
public void printName24{System.out.println(name);}
public abstract boolean addchild(AbstractFile file);
public abstract boolean removeChild(AbstractFile file);
public abstract List<AbstractFile> getChildren24;
}
Class File extends AbstractFile {
public File(String name) { this.name=name; }
public boolean addchild(AbstractFile file) { return false; }
public boolean removeChild(AbstractFile file) { return false; }
public List<AbstractFile> getChildren24 { return (2) ; }
}
Class Folder extends AbstractFile {
private List <AbStractFile> ChildList;
public Folder(String name) {
this.name=name;
this.ChildList = new ArrayLiSt<AbStractFile>24;
public boolean addChild(AbstractFile file) { return ChlldList.add
(file); }
public booleau removeChild(AbstractFile file) { return childList.
reloove(file); }
public (3) <AbstractFile> getChildren24 { return (4) ; }
}
public class Client{
public static void main(String[]args) {
//構(gòu)造一個(gè)樹形的文件/目錄結(jié)構(gòu)
AbstractFile rootFolder=new Folder("c:\\");
AbstractFile compositeFolder=new Folder("composite");
AbstractFile windowsFolder=new Folder("windows");
AbstractFile file=new File("TestComposite.java");
rootFolder.addChild(compositeFolder);
rootFolder.addChild(windowsFolder);
compositeFolder.addChild(file);
//打印目錄文件樹
printTree(rootFolder);
}
private static void printTree(AbstractFile ifile) {
ifile.printName24;
List<AbstractFile>children=ifile.getChildren24;
if(children==null) return;
for (AbstractFile file:children) {
(5) ;
}
}
}
該程序運(yùn)行后輸出結(jié)果為:
C:\
composite
TestComposite.java
Windows
信管網(wǎng)考友試題答案分享:
信管網(wǎng)1815*******:
(1) public
(2) list
(3) list
(4) childlist.getchildren24
(5) printname24(file)
信管網(wǎng)cnit**************:
abstract<br>null<br>arraylist<br>this.childlist<br>
信管網(wǎng)訂閱號(hào)
信管網(wǎng)視頻號(hào)
信管網(wǎng)抖音號(hào)
溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請(qǐng)以權(quán)威部門公布的內(nèi)容為準(zhǔn)!
信管網(wǎng)致力于為廣大信管從業(yè)人員、愛好者、大學(xué)生提供專業(yè)、高質(zhì)量的課程和服務(wù),解決其考試證書、技能提升和就業(yè)的需求。
信管網(wǎng)軟考課程由信管網(wǎng)依托10年專業(yè)軟考教研傾力打造,教材和資料參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識(shí)與高頻考點(diǎn),為學(xué)員考試保駕護(hù)航。面授、直播&錄播,多種班型靈活學(xué)習(xí),滿足不同學(xué)員考證需求,降低課程學(xué)習(xí)難度,使學(xué)習(xí)效果事半功倍。
發(fā)表評(píng)論 查看完整評(píng)論 | |