《Java语言程序设计》模拟试卷B卷以及答案

更新时间:2023-11-13 21:04:02 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《Java语言程序设计》模拟试卷

一.判断题(每题1分,共10分)

1. Java的各种数据类型占用的内存长度固定,与具体软硬件环境无关。 () 2. 无论Java源程序包含几个类的定义,若该源程序文件以B.java命名,编译后生成的都

只有一个名为B.class的字节码文件。()

3. 静态初始化器是在其所属的类加载内存时由系统自动调用执行的方法。()

4. 即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参函数,函数体为空。() 5. 在Java的方法中定义一个常量要用const关键字。()

6. abstract方法所在的类必须是abstract类。()

7. 在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。()

8. Applet是一种特殊的Panel,它是JavaApplet程序的最外层容器。()

9. Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。() 10.一个线程对象的具体操作是由run()方法的内容确定的,但是Thread类的run()方法是空

的,其中没有内容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run()

方法,要么使一个类实现Runnable接口并书写其中run()方法的方法体。()

二.单项选择题(每题2分,共40分)

1.编译JavaApplet源程序文件产生的字节码文件的扩展名为()。

A、java B、class C、html D、exe

2.以下哪个不是Java的原始数据类型()

A、boolean B、double C、float D、Integer 3.以下哪个方法用于定义线程的执行体?()

A、start() B、init() C、run() D、synchronized() 4.下面哪个不是Java中的容器?()

A、ScrollPane B、Canvas C、Applet D、Dialog

5.下面哪个方法与applet的显示无关?()

A、draw() B、update() C、repaint() D、paint()

6.当Frame改变大小时,放在其中的按钮大小不变,则使用如下哪种布局方式?() A、FlowLayout B、CardLayout C、BorderLayout D、GridLayout 7.以下代码完成画线功能,指出所画线的颜色( )

1.g.setColor(Color.red.green.cyan.yello); 2.g.drawLine(0,0,100,100);

A、red B、green C、yello D、cyan

8.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为()。 A、隐藏 B、覆盖 C、重载D、Java不支持此特性 9.有如下代码段:

1)

2){if(unsafe()){//dosomething…} 3)elseif(safe()){//dotheother…} 4)}

其中,方法unsafe()将抛出IOException,请问可将以下哪项填入第1行?()

共6页,第 1 页

A、publicIOExceptionmethodName() B、publicvoidmethodName()

C、publicvoidmethodName()throwIOException D、publicvoidmethodName()throwsIOException 10.以下哪个关键字可以用来对对象加互斥锁?()

A、transient B、synchronized C、serialize D、static 11.以下关于继承的叙述正确的是()。

A、在Java中类不允许多继承

B、在Java中一个类只能实现一个接口

C、在Java中一个类不能同时继承一个类和实现一个接口

D、在Java中接口只允许单一继承

12.在使用interface声明一个接口时,只可以使用()修饰符修饰该接口。 A、private B、protected C、privateprotected D、public 13.编译并运行以下程序,以下描述哪个选项是正确的()

1.classA{

2. protectedbooleanequals(){ 3. returnsuper.equals();} 4. }

A、编译通过运行无异常 B、编译通过但运行时出错 C、行2出错,不能成功编译 D、不能成功编译,行3出错

14.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用()个比特位。 A、8 B、16 C、32 D、64

15.在编写JavaApplet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上()语句。

A、importjava.awt.*; B、importjava.applet.*; C、importjava.io.*; D、importjava.awt.event.*; 16.以下关于构造函数的描述错误的是()。

A、构造函数的返回类型只能是void型。

B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。 C、构造函数的主要作用是完成对类的对象的初始化工作。 D、一般在创建新对象时,系统会自动调用构造函数。 17.有程序如下,关于程序的描述哪个是正确的?()

publicclassPerson{ staticintarr[]=newint[10]; publicstaticvoidmain(Stringa[]) { System.out.println(arr[1]);} }

A、编译将产生错误 B、编译时正确,但运行时将产生错误 C、正确,输出0 D、正确,输出null

18.、A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明:

1. 2. 3.

Aa0=newA(); Aa1=newB(); Aa2=newC();

问以下哪个说法是正确的?()

共6页,第 2 页

A、只有第1行能通过编译

B、第1、2行能通过编译,但第3行编译出错

C、第1、2、3行能通过编译,但第2、3行运行时出错 D、第1行、第2行和第3行的声明都是正确的

19.有语句Strings=”helloworld”;,以下操作哪个是不合法的?()

A、inti=s.length(); B、s>>>=3; C、Stringts=s.trim(); D、Stringt=s+”!”; 20.给出如下代码:

classTest{ privateintm; publicstaticvoidfun(){ //somecode... } }

如何使成员变量m被函数fun()直接访问?()

A、将privateintm改为protectedintm B、将privateintm改为publicintm C、将privateintm改为staticintm D、将privateintm改为intm

三.程序阅读题(每题4分,共40分)1.写出以下程序的运行结果。

publicclassTest

{ publicstaticvoidmain(String[]args) { ClassBcb1=newClassB(1); ClassBcb2=newClassB(1);

if(cb1==cb2){ System.out.println(\ else{ System.out.println(\ } }

classClassB { intx;

ClassB(intx){this.x=x;} }

2.写出以下程序的运行结果。

publicclassTestArray

{publicstaticvoidmain(Stringargs[]){ inti,j;

inta[]={1,3,2,5,4}; for(i=0;i

for(j=i;ja[k])k=j; inttemp=a[i];

共6页,第 3 页

} }

a[i]=a[k];

a[k]=temp; } for(i=0;i

3.写出以下程序的功能。

importjava.io.*; classFileIODemo{

publicstaticvoidmain(String[]args)throwsIOException{ intb;

FileInputStreamfileIn=newFileInputStream(“test.java”); while((b=fileIn.read())!=-1){

System.out.print((char)b); } } }

4.阅读以下程序:

classTest4

{ publicstaticvoidmain(String[]args) { Strings; charc; intupper,lower; upper=lower=0; s=args[0];

for(inti=0;i

if(c>='a'&&c<='z') lower++;

if(c>='A'&&c<='Z') upper++; System.out.println(upper+”,”+lower); } }

若在命令行输入:javaTest4hotJAVA,则输出为。 5.写出以下程序的运行结果。

importjava.util.*; publicclassVec{

publicstaticvoidmain(String[]args){ String[]s; s=newString[2]; s[0]=newString(\s[1]=newString(\Vectorv=newVector();

for(inti=0;i<2;i++)v.addElement(s[i]); v.insertElementAt(newString(\Enumeratione=v.elements();

while(e.hasMoreElements())System.out.print(e.nextElement()+\System.out.println();

共6页,第 4 页

} v.removeElement(\

for(inti=0;i

6.写出以下程序的运行结果。

classOverloadDemo{ voidtestOverload(inti){ System.out.println(“int”);} voidtestOverload(Strings){ System.out.println(“String”);} publicstaticvoidmain(Stringargs[]){

OverloadDemo a=newOverloadDemo(); charch=’x’; a.testOverload(ch);} }

7.阅读以下程序,写出输出结果。

classFirst{

publicFirst(){

aMethod(); } publicvoidaMethod(){

System.out.println(“inFirstclass”);} }

publicclassSecondextendsFirst{ publicvoidaMethod(){

System.out.println(“inSecondclass”);}

publicstaticvoidmain(String[]args){ newSecond(); } }

8.写出以下程序的运行结果。

importjava.io.*; publicclassUseLabel

{ publicstaticvoidmain(String[]args) {Loop: for(inti=2;i<10;i++) {for(intj=2;j

if(i%j==0) continueLoop; System.out.print(i+\ } }

9.写出以下程序的运行结果。

classMyExceptionextendsException{ privateintdetail;

MyException(inta){detail=a;}

publicStringtoString(){ return\}

共6页,第 5 页

本文来源:https://www.bwwdw.com/article/hk4v.html

Top