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

●试题七 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。 【说明】 下面的程序的功能是利

●试题七

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

【说明】

下面的程序的功能是利用实现Runnable接口的方法来创建线程,并利用它来执行响应的一些操作。最后使得m的执行结果:100,如图3。

●试题七 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。 【说明】 下面的程序的功能是利●

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

class ClassName (1) Runnable{

int n;

(2) {

try{

Threa

D.sleep(2000);

n=100;

}catch((3) e){}

}

public static void main(String[]args){

try{

ClassName a=new ClassName();

(4)

thread1. (5) ();

thread1.join();

int m=A.n;

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

}catch((3) e){}

}

}

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“●试题七 阅读以下说明和Java代码,将解答写入答题纸的对应…”相关的问题
第1题
●试题七 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。 【说明】 下面程序的功能是找出

●试题七

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

【说明】

下面程序的功能是找出所有三位数中,个、十、百位数字的立方和等于该数本身的三位数并显示。在程序的每条横线处填写一个适当的词或语句,使程序的功能完整。

public (1) class cube_Root{

public static void (2) main(String args[]){

System.out.println("个、十、百位数字的立方和等于该数本身的三位数有:");

for(int n=100;n<1000;n++)

{

int a,b,c;

(3)

b=n/10%10;

(4)

if((5) )

System.out.println(n);

}

}

}

点击查看答案
第2题
试题七(共 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;

点击查看答案
第3题
●试题六 阅读以下说明和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);

}

}

点击查看答案
第4题
试题七(共 15 分) 阅读下列说明、图和Java代码,将应填入 (n) 处的字句写在答题纸的对应栏内。 [说

试题七(共 15 分)

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

[说明]

已知对某载客车辆(Car)进行类建模,如图 7-1所示,其中类 Engine 表示发动机引擎,类 Wheel 表示车轮,类 Body 表示车身,类 Driver 表示司机,类 Passenger 表示乘客。

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

[Java 代码]

class Body{ //此处代码省略 }; //车身类

class Passenger{ //此处代码省略 }; //乘客类

class Wheel{ //此处代码省略 }; //车轮类

class Driver{ //司机类

public String name; //表示第几路公交车司机

public Driver(String driverName){name = driverName;} //构造函数

};

class Engine{ //引擎类

public String engineNo; //引擎编号

public Engine(String engineNo){ this.engineNo = engineNo; } //构造函数

};

public class Car{ //汽车类

static final int (1) = 7; //定义最多载客数

static final int MAX_WHEELS = 5; //定义最多轮胎数

protected Engine engine;

protected Driver driver;

protected Body body = new Body();

protected Wheel[] wheels;

protected Passenger[] passengers;

public Car(Driver driver){ //构造函数

(2) .driver = driver;

engine = new Engine("TX6536 型号引擎");

wheels = new Wheel[MAX_WHEELS];

passengers = new Passenger[MAX_PASSENGERS];

for (int index = 0; index < MAX_WHEELS; index++){

wheels[index] = new Wheel();

}

for (int index = 0; index < MAX_PASSENGERS; index++){

passengers[index] = null;

}

}

int getPassengerNumber(){ //获取车上乘客数量

//此处代码省略

}

void getOnPassenger(Passenger aPassenger ){ //乘客上车

//此处代码省略

}

void run(){ //开车

if((3) ){ System.out.println("司机尚未上车!"); return;}

//此处代码省略

}

public static void main(String args[]){

Driver driver = new Driver("第五路公交车司机");

Car car = new Car((4) );

for (int index = 0 ; index < MAX_PASSENGERS; index ++)

car.getOnPassenger((5) Passenger());

car.run();

}

}

点击查看答案
第5题
●试题八 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。 【说明】 下面的程序是从命令行

●试题八

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

【说明】

下面的程序是从命令行输入3个数传递到public static void main(String args[])方法中(如 java IsTriangle 3 4 5),并判断这3个数能否构成三角形的3条边,并显示相应的结果。请在程序的每条横线处填入适当的语句,使程序的功能完整。

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

public class IsTriangle{

public static void main(String args[]){

int a[]=new (1) [args. (2) ];

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

{

a[i]= (4)

}

if((5) )

System.out.println(a[0]+ ","+a[1]+ ","+a[2]"能构成三角形的3条边");

else

System.out.println(a[0]+ ","+a[1]+ ","+a[2] "不能构成三角形的3条边");

}

}

点击查看答案
第6题
●试题八 阅读以下说明和Java代码,将解答写入答题纸的对应栏内。 【说明】 下面的程序中定义了两

●试题八

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

【说明】

下面的程序中定义了两个方法求自然数1~100的和。具体如下:int sum1(int n);利用循环求1~n的和,int sum2(int n);利用递归方法求和1~n的和;在main()方法中调用这两个方法求1~100的和并显示。在程序的每条横线处填写一个适当的语句,使程序的功能完整。

public class Sum{

public static void main (1)

{

//1.调用sum1(int n),求1~100的和

//标准输出

(2) ("1~100的和:"+sum1(100));

//2.调用sum2(int n),求1~100的和

//标准输出

(2) ("1~100的和:"+sum2(100));

}

static int sum1(int n)

{

int result=0;

for(int i=1;i<=n;i++)

(3)

retrun result;

}

static int sum2(int n)

{

if (4)

return 1;

else

(5)

}

}

点击查看答案
第7题
●试题六 阅读以下说明和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) ;

}

}

}

点击查看答案
第8题
试题六(共 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. 组合)

点击查看答案
第9题
●试题七 阅读以下说明和C++代码,将解答写入答题纸的对应栏内。 【说明】 请编写一个函数int SeqS

●试题七

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

【说明】

请编写一个函数int SeqSearch(int list[],int start,int n,int key),该函数从start开始,在大小为n的数组list中查找key值,返回最先找到的key值的位置,如果没有找到则返回-1。请修改程序中画线部分的错误并将不同情况下的输出结果补充完整。

【程序】

文件search.cpp的内容如下:

#include <iostream.h>

int SeqSearch(int list[],int start,int n,int key)

{

for(int i=start;i<=n;i++)// (1)

{

if(list[i]=key) // (2)

{

return i;

}

}

return -1;

}

void main()

{

int A[10];

int key,count=0,pos;

cout<<" Enter a list of 10 integers: ";

for(pos=0;pos<10;pos++)

{

cin>>A; // (3)

}

cout<<"Enter a key: ";

cin>>key;

pos=0;

while((pos=SeqSearch(A,pos,10,key))!=-1)

{

count++;

pos++;

}

cout<<key<<" occurs "<<count<<(count!=1?" times":" time")<<" in the list."<<endl;

}

第一种情况:输入2 3 12 6 8 45 8 33 7 输入key:8

输出: (4)

第二种情况:输入2 3 12 6 8 45 8 33 7 输入key:9

输出: (5)

点击查看答案
第10题
试题六(共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();

}

}

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