《java程序设计》试卷一_第1页
《java程序设计》试卷一_第2页
《java程序设计》试卷一_第3页
《java程序设计》试卷一_第4页
《java程序设计》试卷一_第5页
已阅读5页,还剩78页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Oava程序设计》试卷一

班级学号姓名成绩

一.选择题(每题1分,共11分)

1.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?

A、ArrayListmyList=newObject();

B、ListmyList=newArrayList();

C、ArrayListmyList=newList();

D、ListmyList=newList();

2.paint()方法使用哪种类型的参数?

A、Graphics

B、Graphics2D

C、String

D、Color

3.指出正确的表达式

A、byte=128;

B、Boolean=null;

C、longl=0xfffL;

D、double=0.9239d;

4.指出下列程序运行的结果

publicclassExample{

Stringstr=newString("good");

char[]ch={,a','b','c'};

publicstaticvoidmain(Stringargs[]){

Exampleex=newExample();

ex.change(ex.str,ex.ch);

System,out.print(ex.str+z,and〃);

Sytem.out.print(ex.ch);

publicvoidchange(Stringstr,charch[]){

str=〃testok〃;

ch-';

)

)

A、goodandabc

B、goodandgbc

C、testokandabc

D、testokandgbc

5.运行下列程序,会产生什么结果

publicclassXextendsThreadimplementsRunable{

publicvoidrun(){

System,out.printin(''thisisrun(),z);

)

publicstaticvoidmain(Stringargs[])

(

Threadt=newThread(newX());

t.start();

}

)

A、第一行会产生编译错误

B、第六行会产生编译错误

C、第六行会产生运行错误

D、程序会运行和启动

6.要从文件〃file.dat〃文件中读出第10个字节到变量C中,下列哪个方法适合?

A、FilelnputStreamin=newFilelnputStream("file.dat");in.skip(9);intc=in.read();

B、FilelnputStreamin=newFileInputStream(*file.dat/**);in.skip(10);intc=in.read();

C、FilelnputStreamin=newFileInputStream(*file.dat*);intc=in.read();

D、RandomAccessFi1ein=newRandomAccessFile(*file.dat*);in.skip(9);int

c=in.readByte();

7.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?

A、CardLayout

B、FlowLayout

C、BorderLayout

D、GridLayout

8.给出下面代码:

publicclassPerson(

staticintarr[]=newint[10];

publicstaticvoidmain(Stringa口)

(

System,out.println(arr[l]);

)

)

那个语句是正确的?

A、编译时将产生错误;

B、编译时正确,运行时将产生错误;

C、输出零;

D、输出空。

9.哪个关键字可以对对象加互斥锁?

A、transient

Bsynchronized

Cserialize

Dstatic

10.下列哪些语句关于内存回收的说明是正确的?

A、程序员必须创建一个线程来释放内存;

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

11.下列代码哪几行会出错:

1)publicvoidmodify(){

2)intI,j,k;

3)I=100;

4)while(I>0){

5)j=I*2;

6)System,out.printin(〃Thevalueofjis〃+j);

7)k=k+1;

8)I—:

9)}

10))

A、line4

B、line6

C、line7

D、line8

二、多项选择(每题3分,共39分)

1.执行下列代码后哪个结论是正确的Stringf]s=newString!10];

A、s[10]为

B、s[9]为null;

C、s[0]为未定义

D、s.length为10

2.下面的表达式哪个是正确的?

A^Strings="你好";inti=3;s+=i;

B、Strings="你好”;inti=3;if(i=s){s+=i};

C、Strings="你好";inti=3;s=i+s;

D、Strings="你好”;inti=3;s=i+;

E、.Strings=null;inti=(s!=null)&&(s.length>O)?s.length():0;

3.选出合理的标识符

A、_sysl_lll

B、2mail

C、$change

D>class

4.哪个布局管理器使用的是组件的最佳尺寸(preferredsize)

A、FlowLayout

B、BorderLayout

C、GridLayout

D、CardLayout

E、GridBagLayout

5.下列哪个方法可用于创建一个可运行的类?

A、publicclassXimplementsRunable{publicvoidrun(){......}}

B、publicclassXimplementsThread{publicvoidrun(){......}}

C、publicclassXimplementsThread{publicintrun(){......}}

D、publicclassXimplementsRunable{protectedvoidrun(){.....}}

E>publicclassXimplementsThread{publicvoidrun(){......}}

6.卜面哪个方法可以在任何时候被任何线程调用?

A、notify()

B、wait()

C、notifyAll()

D、sleep()

E、yield()

F、synchronized(this)

7.构造BufferedlnputStream的合适参数是哪个?

ABufferedlnputStrearn

BBufferedOutputStrearn

CFilelnputStream

DFileOuterStream

E.File

8.下列说法正确的是

Ajava.lang.Clonable是类

Bjava.lang.Runnable是接口

CDouble对象在java,lang包中

DDoublea=l.0是正确的java语句

9.指出正确的表达式

Adoublea=l.0;

BDoublea=newDoubled.0);

Cbytea=340;

DBytea=120;

10.定义一个类名为〃MyClass.java〃的类,并且该类可被一个工程中的所有类访问,那么该类的正

确声明应为:

AprivateclassMyClassextendsObject

BclassMyClassextendsObject

CpublicclassMyClass

DpublicclassMyClassextendsObject

IL指出下列哪个方法与方法publicvoidadd(inta){}为合理的重载方法。

Apublicintadd(inta)

Bpublicvoidadd(longa)

Cpublicvoidadd(inta,intb)

Dpublicvoidadd(floata)

12.如果下列的方法能够正常运行,在控制台上将显示什么?

publicvoidexample(){

try(

unsafe();

System,out.println(〃Testl〃);

)

catch(SafeExceptione)

{System.out.println(,zTest2〃);}

finally{System,out.println(z,Test3〃);)

System.out.printin("Test4");

)

ATest1

BTest2

CTest3

DTest4

13.下列哪些情况可以终止当前线程的运行?

A抛出一个例外时。

B当该线程调用sleep。方法时。

C当创建一个新线程时。

D当一个优先级高的线程进入就绪状态时。

三、填空题(每题2分,共10分)

1.执行下列代码后的结果是什么?intx,a=2,b=3,c=4;x=++a+b+++c++;

2.I包包含了Collection的接口和类的API

3.main方法的声明格式包括

4.下列程序中构造了一个SET并且调用其方法add(),输出结果是

publicclassA{

publicinthashCode(){return1;}

publicBooleanequals(Objectb){returntrue}

publicstaticvoidmain(Stringargs[]){Setset=newHashSet();

set.add(newA());

set.add(newA());

set.add(newA());

System.out.println(set.sizeO);

)

)

5.下列程序的运行结果是

classA{

classDog{

privateStringname;

privateintage;

publicintstep;

Dog(Strings,inta)

name=s;

age二a;

step=0;

)

publicvoidrun(Dogfast)

fast.step++;

)

}

publicstaticvoidmain(Stringargs口)

Aa=newA();

Dogd=a.newDog("Tom”,3);

d.step=25;

d.run(d);

System.out.printin(d.step);

)

)

四、编程题(每题10分,共40分)

1.编写一个输出“HelloWorld!〃的程序,用两种方式实现(Application、Applet)o

2.打印输出10行杨晖三角形

3.有下面一段Server段程序,目的是能够同时服务多个客户,客户的请求是一句话(一个String)。

如果这个请求的内容是字符串〃plain〃的话,服务器仅将〃hello〃字符串返回给用户。否则将用户的

话追加到当前目录的文本文件Memo,txt中(路径为"Memo.txt〃),并向用户返回〃0K“。注意Server

并发的处理多用户,Memo.txt被共享,要求不能出现数据不•致。Server的程序如下文件

Server,java:

publicclassServer{

publicstaticvoidmain(Stringargs[]){

MemoControllermemoController=newMemoController0;

try(

ServerSocketss=newServerSocket(1999);

while(true){

Sockets=ss.accept();

try{

UserThreadt=newUserThread(s,memoController);

t.start();

}catch(Exceptione){

e.printStackTrace();

}

)

}catch(Exceptione){

e.printStackTrace();

}finally{

memoController.close();

)

)

)

类UserThread程序如下:

文件UserThread.java:

publicclassUserThreadextendsThread(

Sockets;

MemoControllermemo;

publicUserThread(Sockets,MemoControllermemo){

this,s=s;

this,memo=memo;

)

publicvoidrun(){

try(

BufferedReaderbr=newBufferedReader(new

InputStreamReader(s.getlnputStream()));

PrintWriterpw=newPrintWriter(new

OutputStreamWriter(s.getOutputStream()));

Stringreq=br.readLine();

if(req.equals("plain")){

pw.printIn("hello");

}else{

memo,append(req);

pw.println(〃OK〃);

)

pw.flush();

pw.close();

br.close();

s.close();

}catch(Exceptione){

e.printStackTrace();

)

)

)

请根据题目的要求和现有的Server,java,UserThread.java的程序完成类MemoController.java

的程序。

4.用输入/输出写--个程序,让用户输入•些姓名和电话号码。每一个姓名和号码将加在文件里。

用户通过点〃Done〃按钮来告诉系统整个列表已输入完毕。如果用户输入完整个列表,程序将创建

一个输出文件并显示或打印出来。格式如:555-1212,Tom123-456-7890,PeggyL.234-5678,Marc

234-5678,Ron876-4321,Beth&Brian33.1.42.45.70,Jean-Marc

试卷一参考答案

一、选择题答案

选择第1题

B

选择第2题

A

选择第3题

C

选择第4题

B

选择第5题

A

选择第6题

A

选择第7题

B

选择第8题

C

选择第9题

B

选择第10题

B

选择第11题

C

二、多项选择题答案

多项选择第1题

BD

多项选择第2题

AE

多项选择第3题

AC

多项选择第4题

AE

多项选择第5题

AE

多项选择第6题

DEF

多项选择第7题

AC

多项选择第8题

BC

多项选择第9题

AB

多项选择第10题

CD

多项选择第11题

CD

多项选择第12题

ACD

多项选择第13题

ABD

三、填空题答案

填空第1题

x=10,a=3,b=4,c=5

填空第2题

java,util

填空第3题

(public)(static)(void)(main)(Stringargs口)

填空第4题

1

填空第5题

26

四、编程题答案

1

publicclassHelioWorld

(

publicstaticvoidmain(Stringargs[])

(

System,out.printin("Hello,World!z,);

)

}

importjava.awt.Graphics;

importjava,applet.Applet;

publicclassHelleWorldextendsApplet(

Strings;

publicvoidinit(){

s^HelloWorld!";

)

publicvoidpaint(Graphicsg){

g.drawString(s,25,25);

2

classyanghui

(

publicstaticvoidmain(Stringargs[])

(

inti,j;

intyhlevel=10;

intyanghui[]口;

System.out.println(〃杨晖三角形:");

yanghui=newintEyhlevel][];

for(i=0;i<yanghui.length;i++)

yanghui[i]=newint[i+1];

yanghui[0][0]=l;

for(i=l;i<yanghui.length;i++)

{

yanghui[i][0]=l;

for(j=l;j<yanghui[i].length-1;j++)

yanghui[i][j]=yanghui[i-l][j-l]+yanghui[i-1][j];

yanghui[i][yanghui[i].length-l]=l;

}.

for(i=0;i<yanghui.length;i++)

(

for(j=0;j<yanghui[i].length;j++)

System,out.print(yanghui[i][j]+〃〃);

System,out.println();

}

}

输出结果是:

杨晖三角形:

1

11

121

1331

14641

15101051

1615201561

172135352171

18285670562881

193684126126843691

3

importjava.io.*;

publicclassMemoController{

FileOutputStreamfos;

OutputStreamWriterosw;

BufferedWriterbw;

publicMemoController(){

try(

fos=newFileOutputStream("memo,txt”,true);

osw=newOutputStreamWriter(fos);

bw=newBufferedWriter(osw);

}catch(FileNotFoundExceptione){};

)

publicsynchronizedvoidappend(Strings){

try(

bw.write(s,0,s.length());

bw.flush();

bw.close();

osw.close();

fos.close();

}catch(lOExceptione){}

publicstaticvoidmain(Stringargs[]){

MemoControllermmc=newMemoController();

nunc,append(/?Iamxubin");

4

importjava.io.

classPhones

(

staticFileOutputStreamfos;

publicstaticfinalintlineLength=81;

publicstaticvoidmain(Stringargs[])throwslOException

(

byte[]phone=newbyte[lineLength];

byte[]name=newbyte[lineLength];

intI;

try

(

fos=newFileOutputStream(/zphone.numbers^);

)

catch(FileNotFoundExceptione)

()

while(true)

(

System.err.printin(''Enteraname(enter'done'toquit)”);

readLine(name);

if(〃done〃.equalsignoreCase(newString(name,0,0,4)))

(

break;

)

System,err.printin("'Enterthephonenumber");

readLine(phone);

for(inti=0;phone[i]!=0;i++)

{

fos.write(phone[i]);

)

fos.write,f);

for(inti=0;name[i]!=0;i++)

(

fos.write(name[i]);

)

fos.write('\n,);

}

fos.close();

privatestaticvoidreadLine(byteline口)throwslOException

{

inti=0,b=0;

while((i<lineLength-l)&&((b=System.in.read())!="\n())

(

line[i++]=(byte)b;

)

line[i]=(byte)0;

)

)

Oava程序设计》试卷二

班级学号姓名成绩

一、选择(单选题,每题1分,共11分)

l.MAX_LENGTH是int型public成员变量,变量值保持为常量100,用简短语句定义这个变量。

A、publicintMAX_LENGTH=100;

B、finalintMAX_LENGTH=100;

C、finalpublicintMAX_LENGTH=100;

D、publicfinalintMAX_LENGTH=100.

2.给出下面代码:

1)classParent{

2}privateStringname;

3}publicParent(){}

4))

5)publicclassChildextendsParent(

6}privateStringdepartment;

7}publicChiId(){}

8}publicStringgetValue(){returnname;}

9}publicstaticvoidmain(Stringarg[]){

10}Parentp=newParent();

11))

12))

那些行将引起错误?

A、第3行

B、第6行

C、第7行

D、第8行

3.类Teacher和Student是类Person的子类;

Personp;

Teachert;

Students;

//p,tandsareallnon-null.

if(tinstanceofPerson){s=(Student)t;}

最后一句语句的结果是:

A、将构造一个Student对象;

B、表达式是合法的;

C、表达式是错误的;

D、编译时正确,但运行时错误。

4.给出下面代码段

1)publicclassTest{

2)intm,n;

3)publicTest(){}

4)publicTest(inta){m=a;}

5)publicstaticvoidmain(Stringarg[]){

6)Testtl,t2;

7)intj,k;

8)j=0;k=0;

9)tl=newTest();

10)t2=newTest(j,k);

11))

12))

哪行将引起一个编译时错误?

A、line3

B、line5

C、line6

D、line10

5.对于下列代码:

1)classPerson{

2)publicvoidprintValue(inti,intj){//...}

3)publicvoidprintValue(inti){//...}

4))

5)publicclassTeacherextendsPerson{

6)publicvoidprintValue(){//...}

7)publicvoidprintValue(inti){//...}

8)publicstaticvoidmain(Stringargs[]){

9)Persont=newTeacher();

10)t.printValue(10);

11))

第10行语句将调用哪行语句??

A、line2

B、line3

C>line6

D、line7

6.哪个关键字可以抛出异常?

A、transient

B、finally

C、throw

D、static

7.Main。方法的返回类型是:

A、int

B、void

C、boolean

D>static

8.System类在哪个包中?

A、java,util

B、java,io

C、java,awt

D、java,lang

9.对于下列代码:

publicclassParent{

publicintaddValue(inta,intb){

ints;

s=a+b;

returns;

)

)

classChildextendsParent{

)

下述哪些方法可以加入类Child?

A、intaddValue(inta,intb){//dosomething...}

B、publicvoidaddValue(inta,intb){//dosomething...}

C、publicintaddValue(inta){//dosomething...}

D、publicintaddValue(inta,intb)throwsMyException{//dosomething...}

10.给出下面代码:

publicclasstest{

staticinta[]=newa[10];

publicstaticvoidmain(Stringargs[]){

System,out.println(arr[10]);

)

)

那个选项是正确的?

A、编译时将产生错误;

B、编译时正确,运行时将产生错误;

5福田等;

D、输出空。

11.下面哪些选项是正确的main方法说明?

A、publicmain(Stringargs[])

B、publicstaticvoidmain(Stringargs[])

C、privatestaticvoidmain(Stringargs[])

D、voidmain()

二、多项选择(每题3分,共42分)

1.下面哪些代码段是正确的Java源程序?

A、packagetestpackage;

publicclassTest{//dosomething...}

B、importjava.io.♦;

packagetestpackage;

publicclassTest{//dosomething...}

C、importjava.io.*;

classPerson{//dosomething...}

publicclassTest{//dosomething...}

D、importjava.io.*;

importjava.awt.*;

publicclassTest{//dosomething...}

2.publicclassparent{

intchange(){)

)

classChildextendsParent{}

哪些方法可加入类Child中?

A、publicintchange(){}

B、intchang(inti){}

C、privateintchange(){}

D、abstractintchang(){}

3.Strings=〃hello〃;

Stringt="hello”;

charc[]:Ch,,,e,,,l,,,l,,,o,};

下列哪些表达式返回true?

A、s.equals(t);

B、t.equals(c);

C、s=t;

D、t.equals(newString(*hello*));

4.给出下面代码段:

1)switch(m)

2){case0:System,out.printin(z,case0〃);

3)case1:System,out.printlnCzcase1〃);break;

4)case2:

5)default:System,out.printin("default");

6))

下列m的哪些值将引起〃default〃的输出?

A、0

B、1

C>2

D、3

5.卜列哪些说法是正确的?

A、Java语言只允许单一继承

B、Java语言只允许实现一个接口

C、Java语言不允许同时继承一个类并实现一个接口

D、Java语言的单一继承使得代码更加可靠

6.下列关于〃*〃和〃>>〃的运算,哪些是正确的?

A、00000100000000000000000000000000«5的运行结果是100000000000000000000000

00000000

B、00000100000000000000000000000000«5的运行结果是111111000000000000000000

00000000

C、11000000000000000000000000000000»5的运行结果是111111100000000000000000

00000000

D、11000000000000000000000000000000»5的运行结果是000001100000000000000000

00000000

7.下述哪些说法是正确的?

A、实例变量是类的成员变量

B、实例变量是用static关键字声明的

C、方法变量在方法执行时创建

D、方法变量在使用之前必须初始化

8.对于下列代码:

publicclassSample{

longlength;

publicSample(long1){length=1;}

publicstaticvoidmain(Stringarg[]){

Samplesi,s2,s3;

si=newSample(2IL);

s2二newSample(2IL);

s3=s2;

longm=21L;

)

)

下列哪些表达式返回值为‘true'?

A、si==s2;

B、s2==s3;

C、m==si;

D>si.equals(m)

9.下面说法哪些是正确的?

A、Applet可以访问本地文件

B、对static方法的调用不需要类实例

C、socket类在java,lang中

D、127.0.0.1地址代表本机

10.F列说法正确的是:

A、java语言里的线程是没有优先级的

B、String类在java,lang包中

C、java语言支持类的序列化

D、能序列化的类必须实现java.io.Serializable接口

11.关于awt和swing说法正确的是:

A、awt在不同操作系统中显示相同的风格。

B、swing在不同的操作系统中显示相同的风格

C^java,awt的子类

D、awt和swing都支持事件模型

12.关于Float,下列说法正确的是

A、Float是一个类

Float在java,lang包中

C、Floata=l.0是正确的赋值方法

D、Floata=newFloat。.0)是正确的赋值方法

13.下述哪些说法是正确的?

A、java语言中的类只能有一个构造函数

B、程序员可以自己定义自己的异常

C、java语言允许多继承

D、socket在java,net包中

14.下列哪些说法是正确的?

A、lOException必须被捕获或抛出

B、java语言会自动初始化变量的值

C、java语言不允许同时继承一个类并实现一个接口

D、java语言会自动回收内存中的垃圾

三、填空题(第一题4分,第二、三题各3分,共10分)

1.Collection的四种主要接口是I

2.运行下列程序第I行出错。

1.classOuter{

2.privateintsize=5;

3.publicObjectmakelnner(finalintfinalLocalVar){

4.intLocalVar=6;

5.classInner{

6.publicStringtoStringO{

7.return(,,#<Innersize=〃+size+/*〃localVar=,,+localVar+z,finalLocalVar

="z+finalLocalVar+〃>〃);}})

8.returnnewInner();}

9.)

10.publicclassOuterTest{

11.publicstaticvoidmain(String[]args){

12.Outerouter二newOuter();

13.Objectobj=outer.makelnner(56);

14.System,out.println(,zTheobjectis,,+obj.toStringO);}}

3.下列代码不能编译的原因是r

ClassA{

Privateintx;

Publicstaticvoidmain(Stringargs[])

(

newB();

)

classB{

B(){System,out.printin(x);

)

)

)

四、编程题(第一题13分,第二、第三题各12分,共39分)

1.构造一个类来描述屏幕上的一个点,该类的构成包括点的x和y两个坐标,以及一些对点进行

的操作,包括:取得点的坐标值,对点的坐标进行赋值,编写应用程序生成该类的对象并对其进行

操作.

2.编写一个应用程序,完成文件的拷贝功能,文件名从命令行得到。

3.利用所学的Java语言知识,完成一个实现秒表功能的Applet程序。它的GUI界面如下所示:

利用所学的Java语言知识,完成一个实现秒表功能的Applet程序。它的GUI界面如下所示:

要求该程序能够完成以卜功能:

(1)在界面上方的文本框中,按照"小时:分钟:秒”的顺序实时显示系统时间;

(2)当按下界面中间的"CurrentTime:"按钮时,当前系统时间能够在界面下方的文本框中

显示出来。

提示:可以通过调用java.util.Data类的方法,获得系统时间。Data类的接口如下所示,

publicclassDate{

//返回当前系统时间的小时值

publicStringgetHours(){…}

//返回当前系统时间的分钟值

publicStringgetMintues(){…}

//返回当前系统时间的秒钟值

publicStringgetSeconds(){…}

)

试卷二参考答案

一、选择题答案

选择第1题

D

选择第2题

D

选择第3题

C

选择第4题

D

选择第5题

D

选择第6题

C

选择第7题

B

选择第8题

D

选择第9题

C

选择第10题

A

选择第11题

B

一、选择题答案

选择第1题

D

选择第2题

D

选择第3题

C

选择第4题

D

选择第5题

1)

选择第6题

C

选择第7题

B

选择第8题

D

选择第9题

c

选择第10题

A

选择第11题

B

三、填空题答案

填空第1题

Collection,List,Map,Set

填空第2题

7

填空第3题

因为在A的main方法中,还没有A的实例就要试图生成内部类的实例

四、编程题答案

编程第1题

importjava.io.

publicclassPoint

(

intx,y;

publicPoint(intx,inty)

(

this,x=x;

this.y=y;

)

publicPointgetPoint()

(

PointtempPoint=newPoint(x,y);

returntempPoint;

)

publicvoidsetPoint(Pointpoint)

(

this,x=point,x;

this,y=point,y;

)

publicstaticvoidmain(Stringargs[])

(

PointPointl=newPoint(3,4);

System,out.printin("Pointl:〃+〃("+Pointl,x+〃,"+PointLy+〃)〃);

PointPoint2=Pointl.getPoint();

System,out.printIn("Point2:"+"("+Point2.x+〃,"+Point2.y+")”);

PointPoint3=newPoint(5,6);

Pointl.setPoint(Point3);

System,out.printin("Pointl:〃+〃(〃+Pointl.x+〃,〃+Pointl.y+〃)〃);

}

)

编程第2题

importjava.io.

classFileCopy

(

publicstaticvoidmain(String[]args)

(

FilelnputStreamin;

FileOutputStreamout;

if(args.length<2)

(

System,out.println(,zUsage:javacopysrcfiledestfile");

System,exit(-1);

)

try

(

in=newFilelnputStream(args[0]);

out=newFileOutputStream(args[l]);

copyFile(in,out);

}

catch(Exceptione)

System,out.println(e);

}

}

privatestaticvoidcopyFile(FilelnputStreamin,FileOutputStreamout)

(

intlength;

bytebuf[]=newbyte[1024];

try(

while((length=in.read(buf,0,1024))!=-1)

(

out.write(buf,0,length);

)

}

catch(Exceptione)

(

System,out.printIn("Error:〃+e);

System,exit(-1);

)

)

}

编程第3题

importjava,awt.*;

importjava.awt.event.*;

importjava,applet.

importjava.util.*;

publicclassTimeViewerextendsAppletimplementsActionListener,Runnable

Threadtimer;

TextFieldin,out;

Buttonbb;

Panelpl,p2,p3;

booleanstate;

publicvoidinit(){

in=newTextField(20);

out=newTextField(20);

bb二newButton(''CurrentTime:");

pl=newPanel();

p2=newPanel0;

p3=newPanel();

setLayout(newGridLayout(3,1));

setSize(200,100);

pl.add(in);

p2.add(bb);

p3.add(out);

add(pl);

add(p2);

add(p3);

bb.addActionListener(this);

timer=newThread(this);

state=true;

timer,start();

}

publicvoidactionPerformed(ActionEvente){

//out.setText(in.getText());

out.setText(currentTime0);

)

publicvoidrun(){

while(true){

try(

timer.sleep(lOOO);

}catch(InterruptedExceptione){}

in.setText(currentTimeO);;

}

)

StringcurrentTime(){

Datenow=newDateO;

Stringstr=now.getHours()+〃:〃+now.getMinutesO+〃:〃+now.getSeconds();

returnstr;

)

)

Oava程序设计》试卷三

班级学号姓名成绩

一、选择(单选题,每题1分,共12分)

1.给定下面的代码片段:

1)Stringstr=null;

2)if((str!=null)&&(str.length()>10)){

3)System,out.printin(z,morethan10〃);

4))

5)elseif((str!=null)&(str.length()<5)){

6)System,out.printin(,zlessthan5〃);

7))

8)else{System,out.println(z,end/z);}

哪些行会导致错误?

A、line1

B、line2

C、line5

D、line8

2.下面哪种注释方法能够支持javadoc命令:

A、/**...**/

B、/*.・.*/

C、//

D、/**.♦.*/

3.欲编写如卜.图的一个界面,用于显示用户指定的图像:如果在区域A中只能放置一个AWT组件,

从各组件的本来功能角度考虑,最好使用哪种组件:

顶层囱口:ImageViewerFrame

Buttonl:用于

区域A:用于显示图像选择图像文件

文件的图像

Button2:用于

关闭窗口

区域B

A、TextArea

B、Panel

C、Applet

D、Canvas

4.界面如上题所示。若〃Buttonl〃的功能是:点击后弹出一个用于输入的界面,获取用户想要显

示的图像文件名,则该界面最好是(从编程简单和程序不易出错的角度考虑):

A、模式(Modal)Dialog

B、非模式(None-modal)Dialog

C、FileDialog

D、Frame

5.界面如上题所示。如果在A区域使用某种AWT组件(java.awt.Component的子类)来负责绘

制图像,则绘图的语句最好应放在该组件的哪个方法中(考虑到应用程序和Java虚拟机的AWT线程

都会要求重画该组件)?

A、构造方法

B、paint(Graphicsg)

C、update(Graphicsg)

D、repaint()

6.下面关于Applet的说法正确的是

A、Applet也需要main方法

B、Applet必须继承自java.awt.Applet

C、Applet能访问本地文件

D、Applet程序不需要编译

7.看下面一段程序:

classAclass(

voidgo(){

System,out.println(,,Aclass,/);

}

)

publicclassBclassextendsAclass{

voidgo{

System,out.prinlln("Bclass");

publicstaticvoidmain(Stringargs[]){

Aclassa=newAclass();

Aclassal=newBclass0;

a.go();

al.go();

)

以上程序运行结果是:

A、Aclass

Aclass

B、Bclass

Bclass

C、Aclass

Bclass

D、Bclass

Aclass

8.下列关于Java线程的说法那些是正确的()

A、每一个Java线程可以看成由代码、一个真实的CPU以及数据三部份组成。

B、创建线程的两种方法中,从Thread类中继承的创建方式可以防止出现多父类问题。

C、Thread类属于java,util程序包。

D、以上说法无一正确。

9.看以下程序:

booleana=false;

booleanb=true;

booleanc=(a&&b)&&(!b);

intresult=c==false?l:2;

这段程序执行完后,c与result的值是:

A、c=false;result=l;

B、c=true;result=2;

C、c=true;result=l;

D、c=false;result=2;

10.运行下列程序,会产生什么结果

publicclassXextendsThreadimplementsRunable{

publicvoidrun(){

System,out.printin(,zthisisrun(),z);

)

publicstaticvoidmain(Stringargs[])

(

Threadt=newThread(newX());

t.start();

)

)

A、intheInnerouter

B、outer

C、intheInner

D、编译不通过

11.指出下列程序的运行结果

inti=9;

switch(i){

default:

System.out.printin("default");

case0:

System,out.println(,,zero,/);

break;

case1:

System,out.println(〃one〃);

case2:

System,out.println(,,two,/);

}

A、defaul

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论