《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案(共19页).doc

上传人:飞****2 文档编号:15058264 上传时间:2022-05-10 格式:DOC 页数:19 大小:64KB
返回 下载 相关 举报
《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案(共19页).doc_第1页
第1页 / 共19页
《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案(共19页).doc_第2页
第2页 / 共19页
点击查看更多>>
资源描述

《《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案(共19页).doc》由会员分享,可在线阅读,更多相关《《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案(共19页).doc(19页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精选优质文档-倾情为你奉上一、单选题1. 在下列概念中,Java语言只保留了DA运算符重载B结构和联合C指针D 方法重载2. 下列类定义中,不正确的是BAclass x . Bstatic class x implements y1,y2 . Cpublic class x extends Applet . Dclass x extends y . 3. 下列语句序列执行后,k 的值是Bint m=3, n=6, k=0; while( (m+) y | x z Bz ( y + x )Cx != y Dx y & ! ( x z )8. 下列修饰符中,定义类头时能使用的修饰符是CApriva

2、te Bstatic Cabstract Dprotected9. 设i、j、k为类x中定义的int型变量名,下列类x的构造函数中不正确的是BAx( int m) . Bvoid x( int m) . Cx( int m, int n) . Dx( int h,int m,int n) . 10. 下列对封装性的描述中,错误的是 DA封装体包含了属性和行为B封装使得抽象的数据类型提高了可重用性C被封装的某些信息在封装体外是不可见的D封装体中的属性和行为的访问权限是相同的11. 下列关于包的描述中,错误的是 BA包是若干个类的集合B包是一种特殊的类型C包是使用package语句创建的D包有有名

3、包和无名包两种12. 下列关于Applet程序的描述中,错误的是 CAApplet程序的主类必须是Applet类得子类BApplet不是完整的独立程序CApplet程序的主类中应有一个main()方法DApplet的字节码文件必须嵌套在一个HTML文件中13. 下列界面元素中,不是容器的是CA DialogBFrameCListDPanel14. 下列关于异常处理的描述中,错误的是 DA程序运行时异常由Java虚拟机自动进行处理B使用try-catch-finally语句捕获异常C使用throw语句抛出异常D捕获到的异常只能在当前方法中处理,不能在其他方法中处理15. 以下方法不属于迭代器(I

4、terator)接口所定义的方法的是 DAhasNext()Bnext()Cremove()DnextElement()16. 主线程属于(C )A守护线程BThread线程C用户线程DRunnable线程二、填空题1. 三目运算符的3个操作数中,第一个操作数的类型必须是 逻辑 型的。2. 在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占用 2 字节内存空间。3. 假设x=13,y=4,则表达式x%y != 0的值是 true ,其数据类型是 布尔型 。4. Java语言中,多态性主要表现在两

5、个方面: 方法重载 和 成员覆盖 。5. 定义类的关键字是 class ,定义接口的关键字是 interface 。6. 在Java语言中,通过类的定义只能实现 单 重继承,但通过接口的定义可以实现 多 重继承关系。7. 在Java中字符串包括字符串常量和字符串变量,分别由类 String 和类 StringBuffer 来创建对象。8. Java 源程序文件编译后产生的文件称为 class 文件,其扩展名为 java 。9. 在多线程程序设计中,若要启动一个线程需要调用的函数是 start 。10. 在Java语言中,系统规定:表示当前类的构造方法用 this ,表示直接父类的构造方法用 s

6、uper 。17. Java语言规定标识符是由 字母 、 下划线 、 数字 和 美元符号 组成的字符序列,长度不限;又规定第一个字符不能是 数字 ,并区分字母的大小写。18. Java中实现多线程一般使用两种方法,一是Thread,二是 Runnable 。19. Java中变量有三要素: 类型 、 变量名 和 变量值 。20. Java语言中,说明或声明数组时 内存大小,创建数组时 内存大小。21. 集合框架提供的Map接口的实现类中,在Map中插入、删除和定位元素,使用 HasMap 是最好的选择;需要按顺序遍历键,需选择 ThereMap 。22. Outputstream 类和 Inp

7、utstream类是所有字节流输入输出类的父类。23. 导入my.package包中的所类的命令是 import 。24. 构造方法是一种特殊的成员方法,构造方法名与 类 相同,并且此方法 无 有返回值。25. 图形用户界面的设计中有事件处理模型处理事件,在该模型中主要包括 事件源、事件对象 和 事件监听者 。三、判断题1. Java语言具有较好的安全性和可移植性及与平台无关等特性。T2. Java语言的基本数据类型有4种:整型、浮点型、字符型和布尔型。T3. 组成Java Application的若干类中,有且仅有一个主类,只有主类中含有主方法main。T4. 数据由高类型转换到低类型时候,

8、采用强制转换,数据精度要受到损失。T5. 子类所继承父类的成员都可以在子类中访问。6. 静态方法只能处理静态变量。T7. 抽象方法是一种只有说明而无具体实现的方法。 8. Java语言规定在嵌套的程序块中不允许定义同名的成员变量。9. Throwable类有两个子类:Error类和Exception类。前者由系统保留,后者供应用程序使用。10. 运行Applet程序是使用AppletViewer命令运行嵌入了字节码文件的html文件,从而获得运行结果。 11. 成员方法的重载和覆盖是同一回事。12. 集合Set是通过键-值对的方式来存储对象的。13. Java语言是一种强类型语言,数据类型转换

9、有两种:隐含转换和强制转换。14. Java语言中,数组在静态和动态赋值时都判越界。15. Frame容器是有边框的容器,它也是一种独立窗口,只能作为最外层容器。 16. 死锁的产生是因为多个线程间存在资源竞争。 1.组成Java Application的若干类中,有且仅有一个主类,只有主类中含有主方法main。( )2.数据由高类型转换到低类型时候,采用强制转换,数据精度要受到损失。 ( )3.成员方法的重载和覆盖是同一回事。( )4.抽象方法是一种只有说明而无具体实现的方法。 ( )5.Java2的事件处理方法是采用委托事件处理模型。 ( ) 6.Throwable类有两个子类:Error

10、类和Exception类。前者由系统保留,后者供应用程序使用。( )7.运行Applet程序是使用AppletViewer命令运行嵌入了字节码文件的html文件,从而获得运行结果。 8.Java语言具有较好的安全性和可移植性及与平台无关等特性。( )9.Java语言的基本数据类型有4种:整型、浮点型、字符型和布尔型。( )10.子类所继承父类的成员都可以在子类中访问。 ( )11.Java语言规定在嵌套的程序块中不允许定义同名的成员变量。 ( )12.Java语言采用16位颜色标准。Java的调色板保证128色。 13.静态方法只能处理静态变量。 ( )14.画布(Canvas)是一种可容纳多

11、个组件的容器。 ( )15.Java语言是一种强类型语言,数据类型转换有两种:隐含转换和强制转换。( )16.Java语言中,数组在静态和动态赋值时都判越界。 ( )17.Frame容器是有边框的容器,它也是一种独立窗口,只能作为最外层容器。 ( ) 18.集合Set是通过键-值对的方式来存储对象的。 19.异常处理是在编译时进行的。 ( )20.死锁的产生是因为多个线程间存在资源竞争。 ( ) 四、阅读下列程序,请写出程序的输出结果1. class B int b;B(int x) b = x;System.out.println(b= + b); class A extends B int

12、 a;A(int x, int y) super(x);a = y;System.out.println(b= + b + ,a= + a);public class Test public static void main(String args) A obj = new A(13, 23);答案b=13b=13,a=232. public class Test1 public static void main(String agrs) AB s = new AB(Hello!, I love JAVA.);System.out.println(s.toString();class AB S

13、tring s1;String s2;AB(String str1, String str2) s1 = str1;s2 = str2;public String toString() return s1 + s2;答案 Hello!I love JAVA.3.public class Test public static void main(String args) int num1 = new int23;num100 = 3;num101 = 9;num102 = 60;num110 = 78;num111 = 79;for (int i = 0; i = 1; i+) for (int

14、 j = 0; j num1i.length; j+)System.out.print(num1ij + t);System.out.println();答案3960787904. public class Test public static void main(String agrs) int i, s = 0;int a = 10, 20, 30, 40, 50, 60, 70, 80, 90 ;for (i = 0; i a.length; i+)if (ai % 3 = 0) s += ai;System.out.println(s= + s);答案 s=30s=90s=1805.

15、public class Test3 public static void main(String agrs) A a = new A(2); A b = new A(3);System.out.println(a.isEqualTo(b);class A private int privateVar;public A(int _privateVar) privateVar = _privateVar; boolean isEqualTo(A anotherA) if (this.privateVar = anotherA.privateVar) return true;else return

16、 false; 答案false6. public class Test public static void main(String args) int num1 = new int23;num100 = 3;num101 = 9;num102 = 45;num110 = 78;num111 = 79;for (int i = 0; i = 1; i+) for (int j = 0; j num1i.length; j+)System.out.print(num1ij + t);System.out.println();int num2 = new int 1, 2, 3 , 7, 8 ,

17、9 ;for (int i = 0; i num2.length; i+) for (int j = 0; j num2i.length; j+)System.out.print(num2ij + t);System.out.println(); 答案394578790123789 7. public class Test2 public static void main(String agrs) int i, s = 0;int a = 1, 2, 3, 4, 5, 6, 7, 8, 9 ;for (i = 0; i a.length; i+)if (ai % 3 = 0) s += ai;

18、System.out.println(s= + s); 答案s=3s=9s=188. class B int b;B(int x) b = x;System.out.println(b= + b); class A extends B int a;A(int x, int y) super(x);a = y;System.out.println(b= + b + ,a= + a);public class Test public static void main(String args) A obj = new A(5, 10);答案b=5b=5,a=109. public class Tes

19、t4 public static void main(String agrs) try method(); catch (Exception e) System.out.println(A); finally System.out.println(B);static void method() try wrench();System.out.println(C); catch (ArithmeticException e) System.out.println(D); finally System.out.println(E);System.out.println(F);static void

20、 wrench() throw new NullPointerException();答案EAB五、阅读程序,回答问题1 1: public class Output1 2: public static void main(String arge) 3: int i=0;4: for ( char ch = 97; ch113; ch+,i+) 5: if( i % 8 = 0 )6: System.out.println( );7: System.out.print(t +ch); 8: 9: 10: (1)程序第5、6行的if语句的功能是什么? (2)程序输出的结果有几行?2 1: imp

21、ort java.util.Arrays;2: public class SortArray 3: public static void main(String args) 4: String str = size, abs,length,class;5: Arrays.sort(str);6: for (int i=0; istr.length; i+)7: System.out.print(stri+ );8: 9: (1)写出程序运行后的结果。(2)在第4行和5行之间,进行str0.length()方法调用的返回结果是多少?3 abstract class SuperAbstractvo

22、id a()abstract void b();abstract int c(int i);interface AsSupervoid x();abstract class SubAbstract extends SuperAbstract implements AsSuperpublic void b()abstract String f();public class InheritAbstract extends SubAbstractpublic void x()public int c(int i ) public String f()public static void main(S

23、tring args)InheritAbstract instance=new InheritAbstract();instance.x();instance.a();instance.b();instance.c(100);System.out.println(instance.f(); 根据以上这段程序,回答问题:(1)哪几个类是抽象类,写出类名。(2)哪几个类是非抽象类,写出类名。(3)是否有接口,写出接口名。4定义类A和类B如下。class Aint a=1; double d=2.0; void show( ) System.out.println(Class A: a=+a +td

24、=+d); class B extends A float a=3.0f; String d=Java program.; void show( ) super.show( ); System.out.println(Class B: a=+a +td=+d); 若在应用程序的main方法中有以下语句:A a=new A();a.show();则输出的结果如何?Class A: a=1d=2.05写出此程序完成的功能。public class Sum public static void main(String args) double sum = 0.0;for (int i = 1; i

25、= 100; i+)sum += 1.0 / (double) i;System.out.println(sum= + sum);回答问题:以上程序完成什么功能?运行结果是:sum=5.96216写出此程序完成的功能。import java.io.*;public class ArrayCount public static void main(String args) int i, n = 10, sum = 0, count = 0;int a = new int10;for (i = 0; i n; i+)try BufferedReader br = new BufferedReade

26、r(new InputStreamReader(System.in);ai = Integer.parseInt(br.readLine(); catch (IOException e) for (i = 0; i n; i+)sum += ai;sum /= n;for (i = 0; i n; i+)if (ai sum)+count;System.out.println(count);7 import java.util.*;public class Test4 public static void main(String args) Set set = new TreeSet();se

27、t.add(new Integer(10);set.add(new Integer(5);set.add(new Integer(15);set.add(new Integer(5);set.add(new Integer(10);System.out.println(size = + set.size();Iterator it = set.iterator();while (it.hasNext() System.out.print(it.next() + );(1)程序运行后输出的结果如何?size = 35 10 15(2)说明java中的集合(Set接口)和映射(Map接口)的主要区

28、别。8.1: import java.applet.Applet;2: import java.awt.*;3: import java.awt.event.*;4: public class TestKeyListener extends Applet 5: Color clr;6: public void init() 7: addKeyListener(8: new KeyAdapter() 9: public void keyTyped( KeyEvent e ) 10: if(e.getKeyChar()=r|e.getKeyChar()=R)11: clr=Color.red;12

29、: else if(e.getKeyChar()=g|e.getKeyChar()=G)13: clr=Color.green;14: else if(e.getKeyChar()=b|e.getKeyChar()=B)15: clr=Color.blue;16: else17: clr=Color.black; 18: setBackground(clr);19: 20: ); 21: 22: (1)程序第10、11行实现的功能是什么?返回引发键盘事件的按键所对应的Unicode字符,如果为大写R或小写r则让变量clr等于Color类red方法。(2)编译该程序,并编写嵌入该程序字节码文件的

30、网页后,通过支持java的浏览器打开网页。如果敲击键盘的b键,有什么结果?六、程序设计题1. 设计一个Calculator类,并完成下列的各方法的程序设计并测试: (1)定义add()方法,用来计算两数(a,b)之和。(2)定义sub()方法,用来计算两数(a,b)之差。(3)定义mul()方法,用来计算两数(a,b)之积。(4)定义div()方法,用来计算a/b。 public class kk int a, b;int add() return (a + b);int sub() return (a - b);int mul() return (a * b);int div() if (b

31、 != 0)return (a / b);elsereturn 0;public static void main(String args) kk rect = new kk();rect.a = 10;rect.b = 6;System.out.println(add= + rect.add();System.out.println(sub= + rect.sub();System.out.println(mul= + rect.mul();System.out.println(div= + rect.div();2. 定义一个ArrayList集合对象,往其中添加随机产生的0-10之间的f

32、loat类型数据,共添加10个,并打印输出该集合对象中每个元素的值。import java.util.ArrayList;import java.util.Iterator;public class Test public static void main(String args) ArrayList list = new ArrayList();for (int i = 0; i 10; i+)list.add(i, (float) Math.random()*10);for(int j=0;jlist.size();j+)System.out.println(list.get(j);Ite

33、rator it=list.iterator();while(it.hasNext()System.out.println(it.next(); 3. 试利用do while循环,计算10!。public class Sum public static void main(String args) int s = 1;for(int i=1;i=10;i+)s*=i;System.out.println(s);其他问题:1、 用输入流读、并统计用户输入信息中的字母、数字import java.io.*;public class Test11 public static void main(St

34、ring args) throws IOException int nDig=0,nChar=0,nOther=0;InputStreamReader in=new InputStreamReader(System.in);BufferedReader br=new BufferedReader(in);System.out.println(请输入:);String str=br.readLine();for(int i=0;i=0&str.charAt(i)=a&str.charAt(i)=A&str.charAt(i)=Z)nChar+;elsenOther+;System.out.println(字母:+nChar);System.out.println(数字:+nDig);System.out.println(其它字符:+nOther);2、循环语句的使用专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com