首页 > 软考
题目内容 (请给出正确答案)
[主观题]

试题六(共15分)阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】某发

试题六(共15分)

阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。

【说明】

某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图6-1所示的类图。

试题六(共15分)阅读下列说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明

【java代码】

class invoice{

public void printInvoice(){:

System.out.println ("This is the content of the invoice!");

}

}

class Decorator : extends Invoice {

protected Invoice ticket;

public Decorator(lnvoice t){

ticket = t;

}

public void printinvoice(){

if(ticket != NULL)

(1);

}

}

class FootDecorator extends Decorator{

public FootDecorator(lnvoice t){

super(t);

}

public void printinvoice (){

Systent.out.println("This is the header of the invoice! ");

(2) ;

}

}

class FootDecorator extends Decorator {

public FootDecorator(invoice t):{

super(t);

}

public void printlnvoice(){

(3) ;

Systent.out.println("This is the header of the invoice! ");

}

}

Class test {

public static void main(string[] args){

Invoice t =new invioce();

Invoice ticket;

Ticket= (4) ;

Ticket. Printinvoice();

Systent.out.println(“--------------“)

Ticket= (5) ;

Ticket. Printinvoice();

}

}

程序的输出结果为:

This is the header of the invoice!

This is the content of the invoice!

This is the footnote of the invoice!

----------------------------

This is the header of the invoice!

This is the footnote of the invoice!

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“试题六(共15分)阅读下列说明和Java代码,将应填入 (n…”相关的问题
第1题
试题六(共 15分) 阅读以下说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 【说明】

试题六(共 15分)

阅读以下说明和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。

【说明】

已知类 LinkedList 表示列表类,该类具有四个方法:addElement()、lastElement()、umberOfElement()以及removeLastElement()。四个方法的含义分别为:

void addElement(Object): 在列表尾部添加一个对象;

Object lastElement(): 返回列表尾部对象;

int numberOfElement(): 返回列表中对象个数;

void removeLastElement(): 删除列表尾部的对象。

现需要借助LinkedList来实现一个Stack栈类, Java代码1和Java代码2分别采用继承和组合的方式实现。

【Java代码1】

public class Stack extends LinkedList{

public void push(Object o){ //压栈

addElement(o);

}

public Object peek(){ //获取栈顶元素

return (1) ;

}

public boolean isEmpty(){ //判断栈是否为空

return numberOfElement() == 0;

}

public Object pop(){ //弹栈

Object o = lastElement();

(2) ;

return o;

}

}

【Java代码2】

public class Stack {

private (3) ;

public Stack(){

list = new LinkedList();

}

public void push(Object o){

list.addElement(o);

}

public Object peek(){//获取栈顶元素

return list. (4) ;

}

public boolean isEmpty(){//判断栈是否为空

return list.numberOfElement() == 0;

}

public Object pop(){ //弹栈

Object o = list.lastElement();

list.removeLastElement();

return o;

}

}

【问题】

若类LinkedList新增加了一个公有的方法removeElement(int index),用于删除列表中第index个元素,则在用继承和组合两种实现栈类Stack的方式中,哪种方式下Stack对象可访问方法removeElement(int index)? (5) (A. 继承 B. 组合)

点击查看答案
第2题
试题六(共15分) 阅读以下说明和Java代码,填补Java代码中的空缺(1)~(5),将解答写在答题纸的对应栏

试题六(共15分)

阅读以下说明和Java代码,填补Java代码中的空缺(1)~(5),将解答写在答题纸的对应栏内。

【说明】

已知某公司主要有两大类耗电资产(Asset):计算机(ComputerAsset)和建筑物(Building Asset)。为了节约能源,通过控制各种电源,将可关闭的房灯、计算机显示器等在夜间关闭。

为了实现上述需求,设计了如图6-1所示的类图,并用下面的Java代码加以实现。

试题六(共15分) 阅读以下说明和Java代码,填补Java代码中的空缺(1)~(5),将解答写在答

【Java代码】

abstract class Asset{ /*通用资产,基类*/}

interface PowerSwitchable{ /*可在夜间关闭电源的物体实现该接口*/

public void powerDown();

public void powerUp();

}

abstract class BuildingAsset extends Asset{/*建筑物资产*/

protected int room;

public BuildingAsset(int room){ this.room= room; }

}

abstract class BuildingLight extends BuildingAsset{

//灯的通用信息:flourescent/incandescent等,略

BuildingLight(int roomNumber){ super(roomNumber);}

}

classEmergencyLight (1) {/*应急灯,永不关闭*/

EmergencyLight(int roomNumber){

super(roomNumber);

}

}

class RoomLights (2) {

RoomLights(int roomNumber){ super(roomNumber); }

public void powerDown(){ /*关电源,代码略*/}

public void powerUp(){/*开电源,代码略*/}

}

/*ComputerAsset、 Computer CPU和Computer Monitor代码略*/

public class BuildingManagement{

Asset things[]= new Asset[24];

int numltems=0;

public void goodNight(){/*值班员定时“关闭”时调用,关闭可关闭的电源*/

for (int i=0; i<things.length; i++)

if(things[i] instanceof (3) )

((PowerSwitchable)things[i]).powerDown();

}

/*goodMorning()与goodNight()类似,依次调用powerUp(),其实现细节此处略*/

public void add(Asset thing){ /*为建筑添加资产*/

things[ (4) ]=thing;

}

public static void main(String[] args){

BuildingManagementbl= (5) BuildingManagement();

bl.add(new RoomLights(101)); //101房间的控制灯

bl.add(new EmergencyLight(101)); //101房间的应急灯

bl.add(new ComputerCPU(10104));//101房间4号桌上的计算机主机

bl.add(new ComputerMonitor(10104)); // 101房间4号桌上的计算机显示器

bl.goodNight();

}

}

点击查看答案
第3题
试题八(共15分)阅读以下说明和Java程序代码,将应填入(n) 处的字句写在答题纸的对应栏内。[说明]在

试题八(共15分)

阅读以下说明和Java程序代码,将应填入(n) 处的字句写在答题纸的对应栏内。

[说明]

在下面的 Java 程序代码中,类SalesTicket 能够完成打印票据正文的功能,类HeadDecorator 与FootDecorator 分别完成打印票据的台头和脚注的功能。已知该程序运行后的输出结果如下所示,请填补该程序代码中的空缺。这是票据的台头!这是票据正文!这是票据的脚注!------------------------这是票据的台头!

这是票据的脚注!

[Java程序代码]

public class SalesTicket {

public void printTicket() {

System.out.println("这是票据正文!");

}

}

public class Decorator extends SalesTicket{

SalesTicket ticket;

}

}

public class FootDecorator extends Decorator{

public FootDecorator(SalesTicket t) {

(2) ;

}

public void printTicket() {

super.printTicket();

System.out.println("这是票据的脚注!");

}

}

public class Main {

public static void main(String[] args) {

T = new HeadDecorator((3) );

T. (4) ;

System.out.println("------------------------");

T = new FootDecorator((5) );

T.printTicket();

}

}

public Decorator(SalesTicket t){

ticket = t;

}

public void printTicket(){

if(ticket != null)

ticket.printTicket();

}

}

public class HeadDecorator extends Decorator{

public HeadDecorator(SalesTicket t) {

(1) ;

}

public void printTicket() {

System.out.println("这是票据的台头!");

super.printTicket();

点击查看答案
第4题
试题五(共15分) 阅读以下说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 小明在一家

试题五(共15分)

阅读以下说明,回答问题1至问题3,将解答填入答题纸的对应栏内。

【说明】

小明在一家超市工作,该超市将进行整体改造,小明负责信息系统软硬件升级,他制定的工作计划如表5.1所示。

试题五(共15分) 阅读以下说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 小明在

每项任务的逻辑关系和部分时间信息如图5-1所示。

试题五(共15分) 阅读以下说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 小明在

【问题1】 (10分)

请根据表5-1和图5-1,计算各项任务的最迟开始时间和最迟结束时间,填充图5-1中的空(1)~(10)。

点击查看答案
第5题
●试题六 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。 【说明】 请完成下列Java程序。程

●试题六

阅读以下说明和Java代码,将解答写入答题纸的对应栏内。

【说明】

请完成下列Java程序。程序的执行结果是生成一个具有一个TextField类型的对象in、Button类型的对象btn和Label类型的对象out图形用户界面,程序的功能是计算用户输入数的平方,如图3所示。

●试题六 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。 【说明】 请完成下列Java程序

注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。

【程序】

import javA.awt.*;

import javA.awt.event.*;

public class square {

public static void main(String args[]){

(1)

}

}

class AppFrame. extends Frame{

TheAdapterTest listener=new TheAdapterTest();

TextField in=new TextField (5) ;

Button btn=new Button("计算");

Label ut=new Label("用于显示计算结果");

public AppFrame()

{

setLayout(new FlowLayout());

add(in);

add(btn);

add(out);

btn.addActionListener(new BtnActionAdapter());

addWindowListener(listener);

setSize(400,100);

show();

}

class BtnActionAdapter implements (2) {

public void actionPerformed((3) ){

String s=in.getText();

double d= (4)

double sq=d*d;

out.setText(d+"的平方是:"+sq);

}

}

class TheAdapterTest extends WindowAdapter

{

public void windowClosing((5) )

{

System.exit (1) ;

}

}

}

点击查看答案
第6题
●试题六 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。【说明】 下面程序的功能是显示已

●试题六

阅读以下说明和Java代码,将解答写入答题纸的对应栏内。【说明】

下面程序的功能是显示已定义的一个3行3列的二维数组每行的元素,并求所有元素的和并输出。请在程序的每条横线处填写一个适当的语句,使程序的功能完整。

public class Array{

(1) static (2) main(String args[])

{

int sum=0;

int b[][]={{11,12,13},{21,22,23},{31,32,33}};

for(int i=0; (3) i++)

{

System.out.print("b["+i+"]: ");

for(int j=0; (4) j++)

{

System.out.print(b[i][j]+" ");

(5)

}

System.out.println();

}

System.out.println("sum="+sum);

}

}

点击查看答案
第7题
试题五(共15分)阅读下列说明和C++-代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】某发

试题五(共15分)

阅读下列说明和C++-代码,将应填入 (n) 处的字句写在答题纸的对应栏内。

【说明】

某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。

试题五(共15分)阅读下列说明和C++-代码,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明

【C++代码】

include <iostream>

using namespace std;

class invoice{

public:

(1) {

cout《 "This is the content of the invoice!"《 endl;

}

};

class Decorator : public invoice {

Invoice *ticket;

public:

Decorator(lnvoice *t) { ticket = t; }

void printinvoice(){

if(ticket != NULL)

(2);

}

};

class HeadDecorator : public Decorator{

public:

HeadDecorator(lnvoice*t): Decorator(t) { }

void printinvoice0 {

cout《 "This is the header of the invoice! "<< endl;

(3) ;

}

};

class FootDecorator : public Decorator{

public:

FootDecorator(invoice *t): Decorator(t) { }

void printlnvoice() {

(4) ;

cout《 "This is the footnote of the invoice!"《 endl;

}

};

int main(void) {

Invoice t;

FootDecorator f(&t);

HeadDecorator h(&f);

H.printlnvoice();

cout< < “_____”< < endl;

FootDecorator a(NULL);

HeadDecorator b((5) );

B.printinvoice();

return 0;

}

程序的输出结果为:

This is the header of the invoice!

This is the content of the invoice!

This is the footnote of the invoice!

----------------------------

This is the header of the invoice!

This is the footnote of the invoice!

点击查看答案
第8题
试题一(共15分)阅读下列说明,回答问题1和问题2,将解答填入答题纸的对应栏内。【说明】场景法是黑盒

试题一(共15分)

阅读下列说明,回答问题1和问题2,将解答填入答题纸的对应栏内。

【说明】

场景法是黑盒测试中重要的测试用例设计方法,通过场景描述业务流程(包括基本流(基本业务流程)和备选流(分支业务流程)),设计测试用例遍历软件系统功能,验证其正确性。

下面是对电子不停车收费系统(ETC)的基本流和备选流的描述。

试题一(共15分)阅读下列说明,回答问题1和问题2,将解答填入答题纸的对应栏内。【说明】场景法是黑盒

【问题1】(3分)

使用场景法设计测试用例,指出所涉及到的基本流和备选流。基本流用A字母编号表示,备选流用表1-2中对应的字母编号表示。

例如:

T01:A

T02:A、B

【问题2】 (12分)

针对问题1设计的测试用例,依次将初次读取车辆信息、最终读取车辆信息、账户号码、账户余额和账户状态等信息填入下述测试用例表中。表中行代表各个测试用例,列代表测试用例的输入值,用V表示有效数据元素,用I表示无效数据元素,n/a表示不适用,例如T01表示“成功通过”用例。

试题一(共15分)阅读下列说明,回答问题1和问题2,将解答填入答题纸的对应栏内。【说明】场景法是黑盒

请帮忙给出每个问题的正确答案和分析,谢谢!

点击查看答案
第9题
试题四(共15分)阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】图4-1是某

试题四(共15分)

阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。

【说明】

图4-1是某企业网络拓扑结构。

试题四(共15分)阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】图4-1

【问题1】(2分)

防火墙的规则配置如表4-1所示,请解释该配置的含义。

试题四(共15分)阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】图4-1

【问题2】 (5分)

编写表4-2中规则1,禁止内网主机pc1访问Internet上的FTP服务。

试题四(共15分)阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。【说明】图4-1

【问题3】(2分)

能否在不增加规则的前提下,通过修改表4-2中的规则1,限制内网主机pc1仅能访问Internet上的FTP服务,请说明理由。

【问题4】 (5分)

编写表4-3中的规则,允许外网主机访问内网的DNS服务。

【问题5】(1分)

请说明表4-3中的规则应该插入到表4-2中的何处才能生效。

点击查看答案
第10题
试题七(共 15 分) 阅读下列说明、图和Java 代码,回答问题1 至问题3,将解答写在答题纸的对应栏内。

试题七(共 15 分)

阅读下列说明、图和Java 代码,回答问题1 至问题3,将解答写在答题纸的对应栏内。

[说明]

已知四个类之间的关系如图 7-1 所示,分别对每个类的方法进行编号,例如 Shape的 perimeter()为 1 号,表示为“1:perimeter()” ,Rectangle 类的 perimeter()为 2 号,表示为“2:perimeter()” ,依此类推,其中,每个类的 perimeter方法签名相同。

试题七(共 15 分) 阅读下列说明、图和Java 代码,回答问题1 至问题3,将解答写在答题纸的对

[Java 代码]

Triangle tr = new Triangle();

Square sq = new Square();

Shape sh = tr;

[问题 1] 关于上述 Java代码中 sh 和 tr 的以下叙述中,哪两个是正确的(写出编号) 。

① sh 和 tr 分别引用同一个对象;

② sh 和 tr 分别引用同一类型的不同的对象;

③ sh 和 tr 分别引用不同类型的不同对象;

④ sh 和 tr 分别引用同一个对象的不同拷贝;

⑤ sh 和 tr 所引用的内存空间是相同的。

[问题 2] 写出下面消息对应的方法编号(如果该消息错误或者没有对应的方法调用,请

填写“无” ) 。

tr.height() (1)

sh.perimeter() (2)

sq.height() (3)

sq.perimeter() (4)

sh.height() (5)

tr.perimeter() (6)

[问题 3] 下列赋值语句中哪两个是合法的(写出合法赋值语句的编号) 。

① sq = sh; ② sh = tr; ③ tr = sq; ④ sq = tr; ⑤ sh = sq;

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改