1、Java 语言与 WWW 技术设计期末复习题1关于类的继承以下说法正确的是( ) 。 A在 java 中只允许单一继承 B在 java 中一个类只能实现一个接口C在 java 中一个类不能同时继承一个类和实现一个接口Djava 允许多重继承2在浏览器中执行 applet 程序,将被最后执行的方法是( ) 。Ainit() Bstart() Cdestroy() Dstop()3关于垃圾收集机制以下叙述正确的是( ) 。A程序开发者必须自己创建一个线程进行内存释放的工作B垃圾收集将检查并释放不再使用的内存C垃圾收集允许程序开发者明确指定并立即释放该内存D垃圾收集能够在期望的时间释放被 java
2、对象使用的内存4容器 Frame 缺省使用的布局编辑策略是( ) 。AFlowLayout BBorderLayout CGridLayout DCardLayout5要使类中某个成员变量只能被它自身访问到,该变量( ) 。A只能用 protected 修饰 B只能用 public 修饰C只能用 private 修饰 D应不加修饰符6以下关于构造函数的描述错误的是( ) 。A构造函数的返回类型只能是 void 型B构造函数是类的一种特殊函数,它的方法名必须与类名相同C构造函数的主要作用是完成对类对象的初始化工作D一般在创建新对象时,系统会自动调用构造函数7有如下代码段: 12 if(fun1(
3、)/do something 3 else if(fun2()/do the other 4 其中,方法 fun1() 将抛出 IOException, 以下可以填入第 1 行的是( ) 。Apublic IOException methodName() Bpublic void methodName() Cpublic void methodName() throw IOException Dpublic void methodName() throws IOException8分析下面的程序代码,以下说法正确的是( ) 。public class B extends A public st
4、atic void main(String args) B b=new B();b.print(); class A String s;A(String s) this.s=s; public void print() System.out.println(s); A 编译成功,运行情况良好B 因为 B 没有构造方法 B(),所以这段程序不能编译C 这段程序可以通过编译,但由于方法名冲突,引起一个运行时错误D 如果删除 A 类中的构造方法,这个程序可以编译9将以下哪个方法的定义插入第 6 行后,会引发编译错误?( )1 class Super 2 public float getNum()re
5、turn 0.1f; 3 4 5 public class Sub extends Super 6 7 Apublic float getNum(int x)return (float)x; Bpublic int getNum()return 1; Cpublic void getNum(double d) Dpublic double getNum(float d) return 4.0d; 10以下接口定义正确的是( ) 。Ainterface A void print() ;Babstract interface A void print() ;Cabstract interface
6、A extends A1,A2 /A1A2 为已定义的接口 abstract void print() ;Dpublic interface A void print();11给出如下代码:class Test/定义成员 mpublic static void fun() / some code.要在函数 fun()中直接访问 m,以下成员变量定义正确的是( ) 。Aprotected int m; B public int m; Cstatic int m; Dint m ;12以下用于定义线程执行体的方法是( ) 。A start() Binit() Crun() Dsynchronize
7、d() 13给出如下代码:public class A public static void main(String args) static int x = new int15; System.out.println(x1); 以下说法正确的是( ) 。A编译出错B编译通过,但运行时有错,因为数组元素没有初始化C编译通过,输出 0 ,因为静态成员能得到初始值D编译通过,但运行结果不确定,为随机值14编译并运行以下程序,以下说法正确的是( ) 。1. class UseToString2. protected String toString()3. return super.toString(
8、);4. A编译通过运行无异常 B编译通过但运行时出错C行 2 出错,不能成功编译 D不能成功编译,行 3 出错15以下方法的返回类型是( ) 。ReturnType method(double x, float y)return x/y*2;Abyte Bshort Cdouble Dfloat16在 Java 语言中,那一个是最基本的元素?( )A、方法 B、包 C、对象 D、接口17以下关于面向对象概念的描述中,不正确的一项是( )。A、在现实生活中,对象是指客观世界的实体 B、程序中的对象就是现实生活中的对象C、在程序对象是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(clas
9、s)D、在程序中,对象是一组变量和相关方法的集合18在使用 interface 声明一个接口时,只可以使用哪一个修饰符修饰该接口?( )A、private B、protected C、private protected D、public19有如下代码段: if(fun1()/do something else if(fun2()/do the other 其中,方法 fun1() 将抛出 IOException, 以下可以填入第 1 行的是( ) 。Apublic IOException methodName() Bpublic void methodName() Cpublic void m
10、ethodName() throw IOException Dpublic void methodName() throws IOException20下列语句序列执行后,x 的值是( )。public class ex3public static void main(String args)int a=2;int b=3;int x=4;x=+a*x;Systemoutprintln(x) ;A、l3 B、12 C、11 二、改错题 判断下面的程序段是否正确。若有错,指出错在哪里并改正;若正确,打“” 。1class Test1 int x;abstract int getX( );2cla
11、ss A private long pw;class Test2 extends A int getPW() return pw; 3public static void main(String args ) char ch=c;try ch=System.in.read();/省略其余代码catch(Exception e) return; catch(IOException e)System.out.println(e.toString();4public class Test4 int i;void Test4(int i) this.i=i; void printi( int i )
12、System.out.println(i); 5/*ActionListener 为接口,void actionPerformed(ActionEvent a)为接口方法*/public class Test5 implements ActionListener void actionPerformed(ActionEvent a) /省略三、程序阅读题 1写出以下程序的运行结果。class AA()System.out.print(“A “);class B extends AB()System.out.print(“B “);public class Test_1 extends BTes
13、t_1()System.out.print(“Test_1 “);public static void main(String args)new Test_1( );2写出以下程序的功能。import java.io.*;class Test_2public static void main(String args) throws IOExceptionint b;FileInputStream fileIn=new FileInputStream(“a.txt“);while(b=fileIn.read()!=-1)System.out.print(char)b); 3阅读以下程序,若输入:
14、12345写出以下程序的运行结果。import java.io.* ;public class Test_3 public static void main(String args ) int a = new int5;for (int i = 0 ; i y) return x;else return y; 6写出以下程序的运行结果。public class Test_6 public static void main(String args)char a=new char33;for(int i=0;i=j) aij=*;else aij= ;for(int i=0;i0) osToSer
15、ver.writeDouble(radius);osToServer.flush();double area = isFromServer.readDouble();System.out.println(“Area received from the server is “+ area); isFromServer.close();osToServer.close();connectToServer.close();catch (IOException ex) System.err.println(ex); 四、编程题 1、请输出 10 到 100 以内的所有素数.素数是这样一类数,除了 1
16、和自身外,没有其它的因子2、编写程序,对由键盘输入的 20 个数,求出所有正数的和并输出。3、编写一个完整的 Java Application 程序。包含接口 ShapeArea,类 MyTriangle, 类Test,具体要求如下:接口 ShapeAreadouble getArea():求一个形状的面积double getPerimeter ():求一个形状的周长类 MyTriangle实现 ShapeArea 接口,并有以下属性和方法: 属性x,y,z: double 型,表示三角形的三条边s: 周长的 1/2(注:求三角形面积公式为 ,s=(x+y+z)()(zsyxs/2 ,开方可用
17、 Math.sqrt(double)方法) 方法MyTriangle(double x, double y, double z):构造函数,给三条边和 s 赋初值,若不能构成三角形则给出提示并结束程序。toString():输出矩形的描述信息,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”Test 类作为主类要完成测试功能 生成 MyTriangle 对象 调用对象的 toString 方法,输出对象的描述信息(注:程序框架已给出)import java.io.*;public class Test /主类定义(3 分)interface ShapeArea /接口定义(2 分)class MyTriangle implements ShapeArea double x,y,z;double s;MyTriangle(double t1,double t2, double t3) /构造方法 public double getPerimeter()/求周长方法 public double getArea()/ 求面积方法 public String toString()