【Java代码】import Java.util.ArrayList;import java.util.List;(1) class AbstractFile{protected String name;public void printName(){System.out.println(name);}public abstract boolean addChild(AbstractFile file);public abstract boolean removeChild(AbstractF ile f

题目

【Java代码】

import Java.util.ArrayList;

import java.util.List;

(1) class AbstractFile{

protected String name;

public void printName(){System.out.println(name);}

public abstract boolean addChild(AbstractFile file);

public abstract boolean removeChild(AbstractF ile file);

public abstract List<AbstractFile> getChildren();

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> getChildren(){return (2) ;}

class Folder extends AbstractFile{

private List <AbslractFile> childList;

public Folder(String name){

this.name=name;

this.childList=new ArrayList<AbstractFile>();

public boolean addChild(AbstractFile file) { return childList.add(file);}

public boolean removeChild(AbstractFile file){return childList.remove(file);}

public (3) <AbstractFile> getChildren(){return (4) ;}

public class Client{

public static void main(String[] args){

//构造一个树形的文件/目录结构

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(AbslractFile ifile){

ifile.printName();

List <AbslractFile> children=ifile.getChildreno:

if(children==null) return;

for (AbstractFile file:children) {

(5) ;

}

该程序运行后输出结果为:

c:\

composite

TestComposite.java

Windows


相似考题
更多“【Java代码】import Java.util.ArrayList;import java.util.List; (1) class AbstractFile{ protec ”相关问题
  • 第1题:

    在编写Applet程序时,程序中必须有的import语句是

    A.import.java.io.*;

    B.import java.applet.Applet;

    C.import.java.awt.event.*;

    D.import.java.lang.*;


    正确答案:B
    解析:编写Applet程序,其中定义的类是java.applet.Applet类的子类。

  • 第2题:

    对于一个Java源文件,包含三个顶级元素,它们正确的书写顺序是()。

    A.package,import,class

    B.class,import,package

    C.import,package,class

    D.package,class,import


    package,import,class

  • 第3题:

    在一个Java源程序中,如果import语句、package语句、class语句都存在,则出现的次序应为()

    A.import先出现,package和class出现的次序随意

    B.class语句、import语句、package语句

    C.package语句、import语句、class语句

    D.package语句、class语句


    C

  • 第4题:

    下列关于Java对import语句规定自叙述中,错误的是( )。 A.在Java程序中import语句可以有多个SX

    下列关于Java对import语句规定自叙述中,错误的是( )。

    A.在Java程序中import语句可以有多个

    B.在Java程序中import语句可以没有

    C.在Java程序中import语句必须有一个

    D.在Java程序中import语句必须引入在所有类定义之前


    正确答案:C
    C。【解析Java程序中使用import关键字导入一个包中的类。在一个Java源程序中,可以有0个或多个import语句,但是必须在所有类定义之前引入标准类。因此,本题中选项C的说法是错误的。

  • 第5题:

    对于一个Java源文件,包含三个顶级元素,它们正确的书写顺序是()。

    A.class,import,package

    B.import,package,class

    C.package,import,class

    D.package,class,import


    C

  • 第6题:

    要在jsp中使用ArrayList,做法正确的是()。

    A.<% import java.util.ArrayList%>

    B.<%@ import "java.util.ArrayList"%>

    C.<%@ page import="java.util.ArrayList"%>

    D.<%@ page package="java.util.ArrayList"%>


    正在拼命补充中,明天再来康康哇~