JAVA期末复习和答案(1)

上传人:每**** 文档编号:57956293 上传时间:2022-02-25 格式:DOC 页数:17 大小:75.50KB
返回 下载 相关 举报
JAVA期末复习和答案(1)_第1页
第1页 / 共17页
JAVA期末复习和答案(1)_第2页
第2页 / 共17页
JAVA期末复习和答案(1)_第3页
第3页 / 共17页
点击查看更多>>
资源描述
Java期末复习题一、选择题:1、所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是 (B) A. 类 B. 对象 C. 函数体 D. 数据块 2、定义一个不能被继承的名为Abc的类的正确方法是(E)Aclass Abc Bnative class Abc Cabstract final class Abc Dclass Abcfinal; Efinal class Abc3、若要生成ClassA类的一个对象a,以下书写正确的是(A) A.ClassA a=new ClassA();B.ClassA a=new Class(); C.a=new ClassA();D.ClassA a=ClassA();4、 类的构造函数被自动调用执行的情况是在定义该类的 (c) A. 成员函数时 B. 数据成员时 C. 对象时 D. 构造函数时5、编译运行下面程序时有何种结果?请选择一个正确的答案(A)class Test public static void main() System.out.println(hello); A程序不能编译,因为main()方法定义不正确。B程序能编译,但不能运行,因为class未声明为public的。C程序能无错地编译并运行,但运行时将产生异常。D程序运行时显示“hello”。6、关于抽象方法的说法正确的一项是(A)A、可以有方法体B、可以出现在非抽象类中C、抽象方法是没有方法体的方法D、抽象类中的方法都是抽象方法7、 假定AB为一个类,则执行AB x=new AB( );语句时将自动调用该类的(B) A有形参构造函数 B无形参构造函数 C其他成员函数 D重载函数 8、编译并运行如下程序后,结果是什么?请在给出的选项中选择出正确的答案(E)class Array public static void main(String args) int length=100; int d=new intlength; for(int index=0;indexlength;index+) System.out.println(dindex); A因为int数组声明不正确,程序不能被编译。B程序被编译,但在运行时将抛出一个ArrayIndexOutOfBoundsException异常。C程序将显示数字0到99,然后将抛出一个ArrayIndexOutOfBoundsException异常。D程序被编译,但println()方法将抛出一个NoSuchMethodException异常。E程序正常运行,并显示100个0。9、下列关于接口的说法正确的是哪一项(D) A.接口与抽象类是相通的概念 B.实现一个接口必须实现 接口的所有方法C.授课:XXX接口之间不能有继承关系D.一个类可实现多个接口10、 实现运行时的多态性用(A) A重载方法 B构造方法 C非重载方法 D抽象方法11、哪一种布局管理器是从上到下、从左到右安排组件,当移动到下一行时是居中的(B)ABorderLayout BFlowLayout CGridLayoutDCardLayout EGridBagLayout12、下列对继承的说法正确的一项是(B) A.子类能继承父类的所有方法和状态 B.子类能继承父类的非私有方法和状态 C.子类只能继承父类的public方法和状态 D.子类只能继承父类的方法,而不能继承状态13、 Java语言中,如果你有下面的类定义:abstract class Shape abstract void draw(); class Square extends Shape 如果你试图编译上面的代码会发生(B)。A 一切成功编译 B Shape可以编译Square不能编译 C Square可以编译Shape不能编译D Shape、Square都不能编译14、下面代码是做什么的(E)JTextField tf=new JTextField(30);A代码不合法。在JTextField中,没有这样的构造方法B创建了一个30行的JTextField对象,但没进行初始化,它是空的。C创建了一个30列的JTextField对象,但没进行初始化,它是空的。D创建一个有30行文本的JTextField对象。E创建一个有30列文本的JTextField对象。15、构造方法何时被调用(B)A、类定义时 B、创建对象C、调用方法时 D、使用对象的变量时16、 int my_Array; my_Array=new int5; for(int count=0;count 3) Dfloat myFloat=40.0; 51、在Java语言中,u0041在内存中占用的字节数是(D)A15 B2 C4 D852、 不允许作为类及类成员的访问控制符的是(B)。 A. public B. private C. static D. protected 53、设有代码:Boolean b1=new Boolean(true);Boolean b2=new Boolean(true);下面表达式是返回true的合法表达式(B)Ab1=b2 Bb1.equals(b2) Cb1 & b2 Db1| b254、现有两个类M、N,以下描述中表示N继承自M的是(D)。A、class M extends N B、 class N implements MC、class M implements N D、 class N extends M55、下列哪个选项是合法标识符(A)A_book B5files C+static D-3.1415926 56、下列与其它选项不等的是(D)A2 B0xF C015 D0XF57、 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A)。A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( )58、下列类定义中哪些是合法的抽象类定义(d)Aclass Animalabstract void growl(); Babstract Animalabstract void growl(); Cclass abstract Animalabstract void growl(); Dabstract class Animal Abstract void growl(); Eabstract class Animalabstract void growl()System.out.println(“growl”);59、下列选项不属于Java保留字的是( A )Anull Bfalse Csizeof Dtrue60、 编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。授课:XXXA. .java B. .class C. .html D. .exe二、填空题:1、 一个Java的图形用户界面的最基本组成部分是组件。2、登录Sun公司网站,能够看到有关J2SE、J2EE和J2ME的信息。无论哪种Java运行平台,都包含了相应的解释器,解释器负责将字节码文件加载到内存,然后采用解释方式执行字节码文件。3、在Java语言的简单数据类型中,占存储空间最少的数据类型byte.4、局部变量只能在声明它的方法或者语句块中使用,而且使用之前必须进行赋值。5、 Java语言共有三种注释,分别是/,/*/,/*/。6、Java程序必须经过编译,再经过虚拟机才能执行。通过编译器,Java语言源程序转换成与平台无关的中间编码,Java称之为字节码。字节码再经过解释器的解释,转换为机器码,便可在计算机上运行。任何可以运行Java字节码的程序都可以看成是 ,如浏览器和Java的开发工具等都可以看成是JVM的一部分。7、在Java语言中,如果赋值运算符=两边的操作数类型不一致,并且左边操作数类型的优先级低于右边操作数类型的优先级,则需要对右边操作数进行强制转换。8、 编译 .java文件使用的命令是javac。9、抽象类体中,可以包含抽象方法,也可以不包含抽象方法,但类体包含抽象方法的类必须要声明为抽象类。抽象类不能实例化,即使抽象类中没有声明抽象方法,也不能实例 化。10、画线的语句应该修改为static int var=100;,程序才能通过编译运行class MyClass int var=100; static int getVal() return var; 11、 83 % 9 的值是2。12、构造方法仅用于实例化对象,对成员变量进行初始化;成员方法用于对变量进行多种操作。子类对父类的私有成员没有访问权限,子类对父类的成员变量和成员方法具有访问权限。子类虽然继承了父类的成员变量和成员方法,但并不是对父类所有成员变量和成员方法 都具有访问权限,即并不是在自己声明的方法中能够访问父类所有成员变量或成员方法。13、Java中采用接口降低程序的复杂性,提高编程效率,只要是因为它使代码可重用。14、接口可以看成是仅容纳抽象方法、常量,而又不能直接生成对象的特殊抽象类。15、 BorderLayout布局类的所在类包是java.awt。16、在Java中,所有的类都是通过直接或间接地继承java.lang.Object得到的。17、 监听按扭被按下事件的监听器是ActionListener。18、在求解运算速度要求不高,但是要求程序简洁的问题时,通常采用 结构。19、new是实例化对象的操作符。30、Java使用16位的Unicode字符集,因此,Java字符是一个16位的无符号整数。31、 抛出异常的关键字是throw和throws。32、Java的浮点类型包括double和float两种。33、表达式16.8%5的结果是1.8。34、当方法有返回值时,必须在该方法体内使用return语句。授课:XXX35、保留字final是用于定义常量,定义值以后不能再改变。36、如果子类中的某个方法的方法头与他的父类中的某个方法的方法头完全一样,但方法实现的功能不同,称为子类对父类中同名方法的覆盖。37、Java源文件中可以有1个public类。38、在Java中有两种多态,一种是使用方法的重载实现多态,另一种是使用方法的覆盖实现多态。三、判断题1、 Java的类不允许多重继承,但接口支持多重继承。(T)2、无论AWT还是Swing设计的GUI组件必须要放置于容器中(T)。3、 在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。(F)4、Java是面向对象程序设计语言(T)。5、 在一个Java源程序文件中,可以有多个public类。(F)6、子类向上转换成父类类型是安全的( )。7、 abstract方法所在的类必须是abstract类。(T)8、Java采用的是半编译半解释方式(F)。9、 使用方法length()可以获得字符串或数组的长度。(T)10、接口中的方法都是abstarct方法(T)。11、 即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参函数,函数体为空(T)12、静态方法不能使用this、super来调用(T)。13、 无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一名为A的字节码文件(F)14、方法重载和方法改写都要求方法的返回类型必须相同(T)。15、当通过实现Listener接口完成事件处理时,要同时实现该接口中的所有方法。(T)16、子类构造方法中的第一条语句一定是通过super()调用父类的对应入口参数的构造方法或是通过this()调用本类的另一对应入口参数构造方法(T)。17、Package语句必须放在程序的第一句。(T)18、java中类是单一继承性,而接口是多继承性(T)。19、 因为Java不支持多继承,所以定义类时implements关键字后面只能说明一个接口名(F)20、接口中定义的数据字段一定是常量(T)。四、简答题1、在右边的矩形框中写出该程序运行的结果。public class Testpublic static void main(String args) ClassB cb1=new ClassB(1);ClassB cb2=new ClassB(1);if(cb1.x=cb2.x)System.out.println(cb1=cb2);elseSystem.out.println(cb1!=cb2);class ClassB int x;ClassB(int x)this.x=x; 答案:cb1=cb2授课:XXX2、将下面的switch语句用嵌套的if语句表示出来switch(choice) case 1:a=0; b=0; break; case 2:a=1; b=1; break; case 3:a=2; b=2; break; default:c=2; d=3; break;答案:if(a=0)b=0; Else if(a=1)b=1; Else if(a=2)b=2; Else c=2;d=3;3、写出下列程序的运行结果import java.io.*;public class Test public static void main(String args) subclass subW=new subclass(); subW.doPrint(); class superClass int x; superClass() x=3; System.out.println(in superClass:x=+x); void doPoint()class subclass extends superClass int x; subclass() super(); x=8; System.out.println(in subClass():x=+x); void doPrint() super.doPoint(); System.out.println(super.x=+super.x+ sub.x=+x); 授课:XXXin subClass():x=8super.x=3 sub.x=84、在右边的矩形框中写出该程序运行的结果。class StaticTest static int x=1;int y;StaticTest()y+;public static void main(String args ) StaticTest st=new StaticTest(); System.out.println(x= + x); System.out.println(st.y= + st.y); st=new StaticTest(); System.out.println(st.y= + st.y); static x+;5、写出下列程序的运行结果class Time1 private int hour; private int minute; private int second; public Time1() setTime(0,0,0); public Time1(int hh) setTime(hh,0,0); public Time1(int hh,int mm) setTime(hh,mm,0); public Time1(int hh,int mm,int ss) setTime(hh,mm,ss); public String toString() retunr (hour+:+(minute10?0:)+minute+:+(second10?0:)+second); public class MyTime1 private static Time1 t0,t1,t2,t3; public static void main(String args) t0=new Time1(); t1=new Time1(11); t2=new Time1(22,22); t3=new Time1(33,33,33); System.out.println(t0=+t0.toString(); System.out.println(t1=+t1.toString(); System.out.println(t2=+t2.toString(); System.out.println(t3=+t3.toString(); 授课:XXX答案:t0=0:00:00t1=11:00:00t2=22:22:00t3=0:33:336、在右边的矩形框中写出该程序运行的结果。public class TestArray public static void main(String args ) int i , j ;int a = 1,3,2,5,4; for ( i = 0 ; i a.length-1; i + ) int k = i; for ( j = i ; j ak ) k = j; int temp =ai; ai = ak; ak = temp; for ( i =0 ; i10 )throw new MyException(a);System.out.println(normal exit); public static void main( String args )授课:XXXtrycompute(6 );compute( 12 );catch( MyException e )System.out.println(Caught +e); 答案:normal exitcalled compute(12)Caught MyException 129、试标识出下面的QQ类中的所有无效语句(用下划线标示出),对每个无效语句说出其无效的理由。class QQ private int alpha; private int beta; public static void classMethod() this.beta=this.alpha*2; /beta和alpha不是静态. public QQ() /无返回值,应该用void QQ(0,0); public QQ(int x,int y) /无返回值,应该用void alpha=this.x; /应该是this.alpha=x;this.beta=y; beta=this.y; 10、在右边的矩形框中写出该程序运行的结果。class OverloadDemo void testOverload( int i ) System.out.println(“int”); void testOverload(String s) System.out.println(“String”); public static void main(String args ) OverloadDemo a=new OverloadDemo ( ); char ch=x; a.testOverload(ch); 答案:int11、写出下列程序的运行结果public class Text public int t=4;public static void main(String args) new Text().NumberPlay();public void NumberPlay()int t=2;t=t+5;this.t=this.t-2;授课:XXXt=t-this.t;System.out.print(t+ );System.out.println(this.t);答案:5 212、在右边的矩形框中写出该程序运行的结果。class Firstpublic First()aMethod();public void aMethod()System.out.println(“in First class”);public class Second extends Firstpublic void aMethod()System.out.println(“in Second class”);public static void main(String args)new Second( );答案:in Second class13、设计实现地址概念的类Address。Address具有属性:省、市、街道、门牌号、邮编,具有能设置和获取属性的方法。14、请将下列程序补充完整下列程序定义一个表示圆形的类,能够计算园面积和周长class MyCircle float r; final double PI=3.14159; public double area() /计算面积 return PI*r*r; public void setR(float x) /设置半径 r=x; public double perimeter() /计算周长 return 2*PI*r; public static void main(String args) double x,y; MyCircle cir=new MyCircle(); cir.setR(12.35f); x=cir.area(); /计算cir对象的面积授课:XXX y=cir.perimeter; /计算cir对象的周长 System.out.println(圆面积=+x+n圆周长=+y); 15、给定数组int data=56,7,3,22,90,0,22,34,5,3;;编写程序统计偶数个数与奇数个数,并输出统计结果。class Count public static void main(String args) int data=56,7,3,22,90,0,22,34,5,3; System.out.println(奇数的个数是:+Oddnumber(data); System.out.println(偶数的个数是:+Evennumber(data); public static int Oddnumber(int data) int count=0; for(int i=0;idata.length;i+) if(datai%2=1) count+; return count; public static int Evennumber(int data) int count=0; for(int i=0;idata.length;i+) if(datai%2!=1) count+; return count; 16、采用递归算法编写求n!的方法static long fac(int n)。17、设计一个圆类Circle,具有属性:圆心坐标x和y及圆半径r,除了具有设置及获取属性的方法外,还具有计算周长的方法Perimeter()和计算面积的方法area()。再设计一个圆柱体类Cylinder,Cylinder继承自Circle,增加了属性:高度h,增加了设置和获取高度h的方法、计算表面积的方法area()和计算体积的方法volume()。授课:XXX (注:可编辑下载,若有不当之处,请指正,谢谢!) 授课:XXX
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


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

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


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