Java语言与WWW技术期末复习题及参考答案.doc

上传人:s****u 文档编号:12806904 上传时间:2020-05-25 格式:DOC 页数:18 大小:118.51KB
返回 下载 相关 举报
Java语言与WWW技术期末复习题及参考答案.doc_第1页
第1页 / 共18页
Java语言与WWW技术期末复习题及参考答案.doc_第2页
第2页 / 共18页
Java语言与WWW技术期末复习题及参考答案.doc_第3页
第3页 / 共18页
点击查看更多>>
资源描述
Java语言与WWW技术期末复习题一一、单项选择题1在Java语言中,那一个是最基本的元素?( C ) A、方法 B、包 C、对象 D、接口2以下关于面向对象概念的描述中,不正确的一项是( B )。 A、在现实生活中,对象是指客观世界的实体 B、程序中的对象就是现实生活中的对象C、在程序对象是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(class)D、在程序中,对象是一组变量和相关方法的集合3在使用interface声明一个接口时,只可以使用哪一个修饰符修饰该接口?( D ) A、private B、protected C、private protected D、public4有如下代码段: if(fun1()/do something else if(fun2()/do the other 其中,方法fun1() 将抛出IOException, 以下可以填入第1行的是( D )。Apublic IOException methodName() Bpublic void methodName() Cpublic void methodName() throw IOException Dpublic void methodName() throws IOException5下列语句序列执行后,x的值是( B )。public class ex3 public static void main(String args) int a=2; int b=3; int x=4; x=+a*x; System.out.println(x); A、l3 B、12 C、11 D、106如果有2个类A和B,A类基于 B类,则下列描述中正确的一个是( C )。 A、这2个类都是子类或者超类 B、A是B超类的子类 C、B是A超类的子类 D、这2个类都是对方的子类7Java语言最初是面向哪个应用领域设计的?( C )。 A、Internet B、制造业 C、消费电子产品 D、CAD8以下关于构造函数的描述错误的是( A )。A构造函数的返回类型只能是void型B构造函数是类的一种特殊函数,它的方法名必须与类名相同C构造函数的主要作用是完成对类对象的初始化工作D一般在创建新对象时,系统会自动调用构造函数9执行如下语句之后,输出的结果是( D )。public class ex6public static void main(String args) int x= -6,Y=6; x=x+Y-; System.out.println(x); A、12 B、-12 C、-1 D、010设有定义int x= A;,则执行下列语句之后,x的值为( A )。 x= A; A、0 B、A C、a D、65解析:%为求余数,两个相同的字符相除,余数为0。二、简答题 1. 什么叫构造函数重载?答:构造函数是一种特殊的函数,其函数名与类名相同,没有返回类型,将构造函数声明为Public权限;构造函数重载是指构造函数的函数名相同(与类名同),但参数个数可以不同(可以没有参数,也可以有1到多个参数)。2. Java语言有什么特点?答:简单的、面向对象的、分布式的、健壮的、安全的、结构中立的、多线程等。3. 什么叫多线程?Java支持多线程有何意义答:多线程指的是在操作系统每次分时给程序一个时间片的CPU时间内,在若干个独立的可控线程之间进行切换。通过使用多线程,编程人员可以用不同的线程完成特定的行为,而不需要采用全局的事件循环机制,很容易地实现网络上的实时交互行为。4 Java Applet的基本工作原理是什么?答:JavaApplet中没有main()函数,只能通过浏览器调用执行,JavaApplet在浏览器中的基本工作原理是:(1)用户通过浏览器来浏览Applet程序的执行过程,首先进入含有Applet的Web页面,并将WWW服务器上对应的Applet字节码通过网络下载到客户端浏览器。(2)对Applet程序进行初始化,并启动Applet的执行。(3)当用户离开当前含有Applet的页面时或最小化当前页面时,浏览器会暂时停止Applet的执行,让出CPU资源。(4)当用户又再次回到含有Applet的页面时,Applet程序会继续执行。(5)当用户查看完信息关闭浏览器时,浏览器会自动调用Applet类中的方法来终止小应用程序的执行。5. 什么是接口?如何定义接口? 答:Java中的接口是特殊的抽象类,是一些抽象方法和常量的集合,其主要作用是使得不同层次上以至于互不相干的类能能够执行相同的操作、引用相同的值,而且可以同时实现来自不同类的多个方法。接口的定义如下:public interface 接口类名 public类名 常量名=常量值; public方法类型 方法名(参数列表);6 写出比较2个字符串是否相同的方法,并加以说明答:字符串.equals(“字符串”)例如:”Java”.equals(“Java”) 其结果为true三程序阅读题 1写出以下程序的功能。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);答:将文本文件a.txt中的字符逐个输出。2import java.io.*;public class WhatAmI public static void main(String args) char ch, x=0; try for(int i =0; ix) x= ch; System. in. skip(2);System.out.println(x);catch(IOException e) System.out.println(e.toString( ); 答:从键盘接收10个字符,将最后一个大于0的字符输出。3写出以下程序的运行结果。public class Test_5public static void main(String args) System.out.println( fun(30, 20, 10) );static int fun(int x, int y, int z)return fun( x, fun(y,z) );static int fun(int x,int y)if(xy) return x;else return y;答: 30四、编程题 1. 写一个输出整数10以内的奇数的Java程序,每个输出项之间空一个制表符位置。public class Abc public static void main(String args) for(int i=0;i10;i+)if(i%2=1)System.out.print(i+t);2. 写一个Java Application程序,从键盘输入一个字符,输出这个字符的整数数值,以#号键结束输入。import java.io.*;public class Question2 public static void main(String args) char x;System.out.print(请输入一个字符);try x=(char)System.in.read(); while(x!=#) System.out.print(x+t); x=(char)System.in.read(); catch(IOException e)Java语言与WWW技术设计期末复习题二1关于类的继承以下说法正确的是( A )。 A在java中只允许单一继承 B在java中一个类只能实现一个接口C在java中一个类不能同时继承一个类和实现一个接口Djava允许多重继承2在浏览器中执行applet 程序,将被最后执行的方法是( C )。Ainit()Bstart() Cdestroy() Dstop()3关于垃圾收集机制以下叙述正确的是( B )。A程序开发者必须自己创建一个线程进行内存释放的工作B垃圾收集将检查并释放不再使用的内存C垃圾收集允许程序开发者明确指定并立即释放该内存D垃圾收集能够在期望的时间释放被java对象使用的内存4容器Frame缺省使用的布局编辑策略是( A )。AFlowLayoutBBorderLayoutCGridLayoutDCardLayout5要使类中某个成员变量只能被它自身访问到,该变量( C )。A只能用protected修饰B只能用public修饰C只能用private修饰D应不加修饰符6以下关于构造函数的描述错误的是( A )。注:构造函数无类型A构造函数的返回类型只能是void型B构造函数是类的一种特殊函数,它的方法名必须与类名相同C构造函数的主要作用是完成对类对象的初始化工作D一般在创建新对象时,系统会自动调用构造函数7有如下代码段: 12 if(fun1()/do something 3 else if(fun2()/do the other 4 其中,方法fun1() 将抛出IOException, 以下可以填入第1行的是( D )。Apublic IOException methodName() Bpublic void methodName() Cpublic void methodName() throw IOException Dpublic void methodName() throws IOException8分析下面的程序代码,以下说法正确的是( D )。public class B extends Apublic static 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行后,会引发编译错误?( B )1 class Super 2 public float getNum()return 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以下接口定义正确的是( D )。Ainterface A void print() ;Babstract interface A void print() ;Cabstract interface A extends A1,A2 /A1A2为已定义的接口 abstract void print() ;Dpublic interface A void print();11给出如下代码:classTest/定义成员mpublicstaticvoidfun()/somecode.要在函数fun()中直接访问m,以下成员变量定义正确的是( C )。Aprotectedintm;Bpublicintm;Cstaticintm;Dintm;12以下用于定义线程执行体的方法是( C )。Astart()Binit()Crun()Dsynchronized()13给出如下代码:public class A public static void main(String args) static int x = new int15; System.out.println(x1); 以下说法正确的是( A )。A编译出错B编译通过,但运行时有错,因为数组元素没有初始化C编译通过,输出0,因为静态成员能得到初始值D编译通过,但运行结果不确定,为随机值14编译并运行以下程序,以下说法正确的是( C )。1. class UseToString2.protected String toString()3.return super.toString();4.A编译通过运行无异常B编译通过但运行时出错C行2出错,不能成功编译D不能成功编译,行3出错15以下方法的返回类型是( C )。ReturnType method(double x, float y)return x/y*2;AbyteBshortCdoubleDfloat16在Java语言中,那一个是最基本的元素?( C ) A、方法 B、包 C、对象 D、接口17以下关于面向对象概念的描述中,不正确的一项是( B )。 A、在现实生活中,对象是指客观世界的实体 B、程序中的对象就是现实生活中的对象C、在程序对象是通过一种抽象数据类型来描述的,这种抽象数据类型称为类(class)D、在程序中,对象是一组变量和相关方法的集合18在使用interface声明一个接口时,只可以使用哪一个修饰符修饰该接口?( D ) A、private B、protected C、private protected D、public19有如下代码段: if(fun1()/do something else if(fun2()/do the other 其中,方法fun1() 将抛出IOException, 以下可以填入第1行的是( D )。Apublic IOException methodName() Bpublic void methodName() Cpublic void methodName() throw IOException Dpublic void methodName() throws IOException20下列语句序列执行后,x的值是( B )。public class ex3 public static void main(String args) int a=2; int b=3; int x=4; x=+a*x; System.out.println(x); A、l3 B、12 C、11 二、改错题 判断下面的程序段是否正确。若有错,指出错在哪里并改正;若正确,打“”。1class Test1int x;abstract int getX( );答:错误,语句为abstract int getX( );该语句为抽象方法,只有在抽象类中才能定义,可以将Test1定义为抽象类:class abstract Test12class Aprivate long pw;class Test2 extends Along getPW()return pw;答:错误,语句为return pw;,原因是pw在类A中为私有成员,在类B中不可访问,改正方式为:将A类中的private long pw;改成public long pw;3public static void main(String args ) char ch=c; trych=System.in.read(); /省略其余代码catch(Exception e)return;catch(IOException e) System.out.println(e.toString();答:错误,第一处错误为语句ch=System.in.read();,原因是System.in.read();表示从键盘接收一个数值,改成ch=(char)System.in.read();第二处错误为catch(IOException e),原因是Exception已经包含了IOExcption,可将IOExcption放在前,Excption放在后。4public class Test4int i;void Test4(int i)this.i=i; void printi( int i ) System.out.println(i); 答:正确5/*ActionListener为接口,void actionPerformed(ActionEvent a)为接口方法*/ public class Test5 implements ActionListener void actionPerformed(ActionEvent a)/省略 答:错误,出现在:void actionPerformed(ActionEvent a),应加上权限修饰符public,改正为:publicvoid actionPerformed(ActionEvent a)三、程序阅读题 1写出以下程序的运行结果。class AA()System.out.print(A );class B extends AB()System.out.print(B );public class Test_1 extends BTest_1()System.out.print(Test_1 );public static void main(String args)new Test_1( );答:A B Test_12写出以下程序的功能。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);答:将文本文件a.txt中的字符逐个读出并输出到显示器上。3阅读以下程序,若输入:12345 写出以下程序的运行结果。 import java.io.* ; public class Test_3 public static void main(String args ) int a = new int5; for (int i = 0 ; i a.length ; i+ ) try BufferedReader br = new BufferedReader( new InputStreamReader(System.in); ai = Integer.parseInt(br.readLine( ); catch ( IOException e ) ; int s=0; for (int i = 0 ; i y) return x;else return y;采用递归函数求最大值答: 306写出以下程序的运行结果。public class Test_6public static void main(String args)char a=new char33;for(int i=0;ia.length; i+)for(int j=0;j=j)aij=*;elseaij= ;for(int i=0;ia.length;i+)for(int j=0;jai.length;j+)System.out.print(aij);System.out.println(); 答:* * *7写出以下程序的运行结果。class SuperTestpublic SuperTest()System.out.println(SuperTest);showInfo();public void showInfo()System.out.println( in SuperTest);public class Test_7 extends SuperTestpublic Test_7()System.out.print(Test_7);public void showInfo()System.out.println(in Test_7);public static void main(String args)new Test_7( );答:SuperTestin Test_7Test_78写出以下程序的运行结果。class MyException extends Exceptionpublic String toString( )return 负数引发异常; public class Test_8public static void mySqrt(int a) throws MyExceptionif( a0) osToServer.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和自身外,没有其它的因子import java.io.*;public class Prime static boolean isPrime(int x)boolean ret=true;for(int i=2;i=Math.sqrt(x);i+)if(x%i=0)ret=false;break;return ret;public static void main(String args) for(int n=10;n=100;n+)if(isPrime(n)System.out.print(n+ );2、编写程序,对由键盘输入的20个数,求出所有正数的和并输出。import java.io.*;public class Test public static void main(String args) int a = new int20; for (int i = 0; i a.length ; i+ ) try BufferedReader br = new BufferedReader( new InputStreamReader(System.in); ai = Integer.parseInt(br.readLine( ); catch ( IOException e ) ; int s=0; for (int i = 0 ; i =0)s+=ai; System.out.printf(输入的正数之和:%d,s); 3、编写一个完整的Java Application 程序。包含接口ShapeArea,类MyTriangle, 类Test,具体要求如下:接口ShapeAreadouble getArea():求一个形状的面积 double getPerimeter ():求一个形状的周长类MyTriangle实现ShapeArea接口,并有以下属性和方法: 属性x,y,z: double型,表示三角形的三条边s: 周长的1/2(注:求三角形面积公式为,s=(x+y+z)/2 ,开方可用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() 本题的参考答案如下:public class Test public static void main(String args) new MyTriangle(3,4,5);interface ShapeArea /接口定义(2分)double getArea();/求一个形状的面积 double getPerimeter();/求一个形状的周长class MyTriangle implements ShapeAreadouble x,y,z;double s;MyTriangle(double t1,double t2, double t3) /构造方法this.x=t1;this.y=t2;this.z=t3;if(x+yz&x+zy&y+zx) s=(x+y+z)/2;System.out.println(toString(); elseSystem.out.print(输入的边不能构成三角形);public double getPerimeter()/求周长方法 return x+y+z;public double getArea()/ 求面积方法 double area;area=Math.sqrt(s*(s-x)*(s-y)*(s-z);return area;public String toString()return three sides:+x+,+y+,+z+,perimeter=+getPerimeter()+,area=+getArea();第18页
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!