5002《Java语言与WWW技术》期末试卷B卷 下载本文

内容发布更新时间 : 2024/5/6 15:40:19星期一 下面是文章的全部内容请认真阅读。

一、判断题(每题1分,共15分)

1、Java允许创建不规则数组,即Java多维数组中各行的列数可以不同。 ( ) 2、接口和类一样也可以有继承关系,而且都只能支持单继承。 3、所有类至少有一个构造器,构造器用来初始化类的新对象,构造器与类同名,返回类型只能为void。 ( ) 4、包是按照目录、子目录存放的,可以在程序中用package定义包,若没有package一行,则表示该文件中的类不属于任何一个包。 ( )

5、Java对事件的处理是采用委托方式进行的,即将需要进行事件处理的组件委托给指定的事件处理器进行处理。 ( )

6、在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将父类放在前面,子类放在后面。 ( )

7、在实例方法或构造器中,this用来引用当前对象,通过使用this可引用当前对象的任何成员。 ( ) 8、我们可以方便地编写Java客户机/服务器程序,在客户机/服务器模式中,客户机一般通过套接字(Socket)使用服务器所提供的服务,Socket由两部分组成:IP地址和端口号。 ) 9、Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。 ( )

10、Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。 ( )

11 、当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个

程序不一定终止运行。 ( ( )

) 12 、 如果 f 是父类Flower的对象,而r是子类Rose的对象,则语句f=r是正确的。( ) 13、Java系统的标准输入对象是System.in,标准输出对象有两个,分别是System.out 和System.err 。 ( ) 14、final类中的属性和方法都必须被final修饰符修饰。

( )

15、子类可以定义与父类同名的方法,称为方法的覆盖,方法覆盖要求子类 的方法与父类的方法名字和参数都相同,但返回值类型可以不同。 ( ) 二、单项选择题(每题2分,共30分) 1、若在某一个类定义中定义有如下的方法: final void aFinalFunction( );则该方法属于( )。 A、本地方法 B、解态方法 C、最终方法 D、抽象方法

2、main(方法是Java Application程序执行的入口点,关于main方法的方

法头以下哪项是合法的( )。

1

A、 public static void main()

B、 public static void main(String[ ] args) C、 public static int main(String[ ] args) D、 public void main(String arg[ ])

3、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )。

A、隐藏 B、覆盖 C、重载 D、Java不支持此特性

4、在Java applet程序中,用户自定义的Applet子类常常覆盖父类的( )

方法来完成applet界面的初始化工作。 A、start( )

B、stop( )

C、init( )

D、

paint( )

5、以下程序段执行后将有( )个字节被写入到文件afile.txt中。

try{ FileOutputStream fos=new FileOutputStream(“afile.txt”); DataOutputStream dos=new DataOutputStream(fos); dos.writeInt(3); dos.writeDouble(0.01); dos.close(); fos.close( ); } catch(IOException e) { }

A、16 B、12 C、8 D、2

6、以下代码段执行后的输出结果为( )。

int x=-3; float y=10.0f;

System.out.println(y%x);

A、不能成功编译 B、-1.0 C、1.0 D、-1

7、编译并运行以下程序,以下描述哪个选项是正确的( )。

1. class A{

2. protected String toString(){ 3. return super.toString();} 4. }

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

D、不能成功编译,行3出错

8、假设Foo类有如下定义,设f是Foo类的一个实例,下列语句调用哪个

是错误的?( ) public class Foo

{ int i;

static String s;

void imethod() { }

static void smethod() { }

}

A、Foo.imethod(); B、f.imethod(); C、System.out.println(f.i);

D、Foo.smethod()

9、分析下面的程序代码,以下哪个说法是正确的。( )

public class Test extends A { public static void main(String[] args) { Test t=new Test(); t.print(); } }

class A { String s;

A(String s) { this.s=s; } public void print()

2

{ System.out.println(s); }

}

A、因为Test没有构造方法Test(),所以这段程序不能编译。 B、如果删除A类中的构造方法,这个程序可以编译。

C、这段程序可以通过编译,但由于方法名冲突,引起一个运行时错误。 D、编译成功,运行情况良好。

10、类Test1定义如下:

1.public class Test1{ 2. public float aMethod(float a, float b){ } 3. 4.}

将以下哪种方法插入行3是不合法的。( ) A、public float aMethod(float a, float b,float c){ } B、public float aMethod(float c,float d){ } C、public int aMethod(int a, int b){ } D、private float aMethod(int a,int b,int c){ }

11、编译运行以下程序后,关于输出结果的说明正确的是 ( )

public class Conditional{ public static void main(String args[ ]){ int x=1; System.out.println(“value is “+ ((x<1)? 1.0 : 0)) ;

} }

A、输出结果为:value is 1.0 B、输出结果为:value is 0 C、输出结果为:value is 0.0 D、编译错误

12、以下说法哪项是正确的( )

1.class MyListener

2. extends MouseAdapter implements MouseListener{ 3. public void mouseEntered(MouseEvent mev) 4. { System.out.println(\ entered.\ } 5.}

A、以上代码可通过编译

B、不能通过编译,因为没有实现MouseListener接口中的所有方法 C、不能通过编译,因为类头定义不能分行

D、能通过编译,但是若组件用该类作为Mouse事件的监听者并且接收了mouse-exited事件,则在执行过程中会抛出异常

13、编译并运行以下程序(命令:java TestClass 0),关于运行结果的描述以下哪个选项是正确的( )

class TestClass{ public static void main(String [ ] args){ long i=0; try{ i=Integer.parseInt(args[0]); }catch(Exception e){ } switch(i) {case 0: System.out.println(\ case 1: System.out.println(\ default : System.out.println(\ } }

}

A、编译出错 B、打印出“0” C、打印出“1” D、打印出

“default”

14、一个线程的run方法包含以下语句,假定线程没有被打断,以下哪项是

正确的( )

1.try{

2. sleep(100);

3