JAVA程序设计期末考试题(多套含答案)

合集下载

《JAVA语言程序的设计》期末考试题与答案3

《JAVA语言程序的设计》期末考试题与答案3

《JAVA语言程序设计》期末考试试题及答案3一、单项选择题1、如下哪个是Java中的标识符()A、publicB、superC、3numberD、width2、如下哪个是Java中的标识符( )A、fieldnameB、superC、3numberD、#number3、已知如下定义:String s = "story"; 下面哪个语句不是合法的( )A、s += "books";B、s = s + 100;C、int len = s.length;D、String t = s + “abc”;4、如下哪个是Java中有效的关键字()A、nameB、helloC、falseD、good5、下面的代码段执行之后count的值是什么( )int count = 1;for (int i = 1; i <= 5; i++) {count += i;}System.out.println(count);A、5B、1C、15D、166、定义一个类,必须使用的关键字是( )A、publicB、classC、interfaceD、static7、定义一个接口必须使用的关键字是()A、publicB、classC、interfaceD、static8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()A、p.add(b);B、p.add(b,"North");C、p.add(b,"South");D、b.add(p,"North");9、声明并创建一个按钮对象b,应该使用的语句是()A、Button b=new Button();B、button b=new button();C、Button b=new b();D、b.setLabel(“确定”);10、Frame对象默认的布局管理器是()A、FlowLayoutB、BorderLayoutC、CardLayoutD、null11、下列哪一个import命令可以使我们在程序中创建输入/输出流对象()A、import java.sql.*;B、import java.util.*;C、import java.io.*;D、import .*;12、下面哪一个import命令可以为我们提供编写网络应用程序的类()A、import java.sql.*;B、import java.util.*;C、import java.io.*;D、import .*;13、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象()A、FileInputStreamB、FileOutputStreamC、DataOutputStreamD、FileWriter二、填空题1、如果将类MyClass声明为public,它的文件名称必须是(MyClass.java)才能正常编译。

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案

《面向对象程序设计JAVA语言程序设计》期末考试试题及部分答案一、单选题1.在下列概念中,Java语言只保留了DA.运算符重载B.结构和联合C.指针D.方法重载2.下列类定义中,不正确的是BA.cla某{....}B.taticcla某implementy1,y2{....}D.cla某e某tendy{....} C.publiccla某e某tendApplet{....}3.下列语句序列执行后,k 的值是Bintm=3,n=6,k=0;while((m++)<(--n))++k;i++先把i的初值赋给表达式(i++),作为表达式(i++)的值,然后i自增1作为i的值。

如i=1,则表达式(i++)的值等于1,而i的值变为2。

++ii先自增1,再把自增后的值赋给表达式(++i)。

如i=1,则表达式(++i)的值等于2,i的值也为2,A.0B.1C.2D.34.设i、j为int型变量名,a为int型数组名,以下选项中,正确的赋值语句是AA.a[0]=7;B.i=i+2C.i++---j;D.a(0)=66;5.Java语言的类间的继承关系是BA.多重的B.单重的C.线程的D.不能继承6.下列语句序列执行后,k的值是Cinti=10,j=18,k=30;witch(j-i){cae8:k++;cae9:k+=2;cae10:k+=3;default:k/=j;}A.31B.3C.2D.337.设有定义float某=3.5f,y=4.6f,z=5.7f;则以下的表达式中,值为true的是CA.某>y||某>zB.z>(y+某)C.某!=yD.某<y&!(某<z)8.下列修饰符中,定义类头时能使用的修饰符是CA.privateB.taticC.abtractD.protected9.设i、j、k为类某中定义的int型变量名,下列类某的构造函数中不正确的是BA.某(intm){...}B.void某(intm){...}D.某(inth,intm,intn){...}C.某(intm,intn){...}10.下列对封装性的描述中,错误的是DA.封装体包含了属性和行为B.封装使得抽象的数据类型提高了可重用性C.被封装的某些信息在封装体外是不可见的D.封装体中的属性和行为的访问权限是相同的11.下列关于包的描述中,错误的是BA.包是若干个类的集合B.包是一种特殊的类型D.包有有名包和无名包两种C.包是使用package语句创建的12.下列关于Applet程序的描述中,错误的是CA.Applet程序的主类必须是Applet类得子类B.Applet不是完整的独立程序C.Applet程序的主类中应有一个main()方法D.Applet的字节码文件必须嵌套在一个HTML文件中13.下列界面元素中,不是容器的是A.DialogB.FrameCC.LitD.Panel14.下列关于异常处理的描述中,错误的是DA.程序运行时异常由Java虚拟机自动进行处理B.使用try-catch-finally语句捕获异常C.使用throw语句抛出异常D.捕获到的异常只能在当前方法中处理,不能在其他方法中处理15.以下方法不属于迭代器(Iterator)接口所定义的方法的是D A.haNe某t()B.ne某t()16.主线程属于A.守护线程C.remove()D.ne某tElement()(C)B.Thread线程C.用户线程D.Runnable线程二、填空题1.2.三目运算符的3个操作数中,第一个操作数的类型必须是逻辑型的。

java程序设计期末考试试题汇总及答案

java程序设计期末考试试题汇总及答案

java程序设计期末考试试题汇总及答案1. 简答题1.1 什么是Java程序设计?答:Java程序设计是指使用Java编程语言进行软件开发的过程。

它包括了编写、测试和维护Java程序的各个步骤。

1.2 Java程序的开发环境有哪些?答:Java程序的开发环境包括Java Development Kit(JDK)、集成开发环境(IDE)等工具。

2. 编程题2.1 编写一个Java程序,实现两个整数相加的功能。

答:```javapublic class AddTwoNumbers {public static void main(String[] args) {int num1 = 5;int num2 = 10;int sum = num1 + num2;System.out.println("两个整数相加的结果为:" + sum);}}```2.2 编写一个Java程序,实现对一个整数数组进行冒泡排序。

答:```javapublic class BubbleSort {public static void main(String[] args) {int[] numbers = {5, 2, 8, 1, 9};int temp;for (int i = 0; i < numbers.length - 1; i++) {for (int j = 0; j < numbers.length - i - 1; j++) {if (numbers[j] > numbers[j+1]) {temp = numbers[j];numbers[j] = numbers[j+1];numbers[j+1] = temp;}}}System.out.println("冒泡排序后的数组为:");for (int number : numbers) {System.out.print(number + " ");}}}```3. 填空题3.1 Java中的访问修饰符有_____,______,______和______。

2024年JAVA语言程序设计期末考试试题及答案应考必备题库

2024年JAVA语言程序设计期末考试试题及答案应考必备题库

《JAVA语言程序设计》期末考试试题及答案4(应考必备题库)一、单项选择题1、下列程序段执行后的成果是( )。

String s =new String("abcdefg");for (int i=0; i<s.length(); i+=2){ System.out.print(s.charAt(i));}A) aceg B) ACEG C) abcdefgD) abcd 二、单项选择题1、下列程序段执行后的成果是( )。

String s= new String("abcdefg");for (inti=0; i<s.length();i+=2){ System.out.print(s.charAt(i));} B) A)aceg B) ACEG C)abcdefg D) ab 2、有整型数组:int[] x={12,35,8,7,2};,则调用措施Arrays.sort(x)后,数组x中的元素值依次是( ).A) 2 7 8 12 35 ﻩﻩB)12 35 8 7 2 C) 35 12 8 7 2 ﻩﻩﻩD)8 7 12 35 23、下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文献夹下的文献1.txt。

File结构函数中正确的途径和文献名的表示是( )。

File f = new File(填代码处);file =newFileReader(f);in=new BufferedReader(file);A) "./1.txt" B) "../my/1.txt" C) "c:\\my\\1.txt" D) "c:\ my\1.txt" 4、应用程序的main措施中有如下语句,则输出的成果是( )。

 String s1=new String("abc"); String s2=new String("abc"); booleanb1=s1.equals(s2); boolean b2=(s1==s2); System.out.print(b1+" "+b2);A)true false B)false true C) truetrue D)falsefalse 5、应用程序的main措施中有如下语句,则输出的成果是( )。

JAVA期末试题及答案

JAVA期末试题及答案

JAVA期末试题及答案《Java程序设计》课程试卷1.使用Java语言编写的源程序保存时的文件扩展名是()。

(A).class (B).java(C).cpp (D).txt2.设int a=-2,则表达式a>>>3的值为()。

(A)0 (B)3 (C)8(D)-13.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是()。

(A)a[0]; (B)a[];(C)a[3]; (D)int i=1; a[i];4.在类的定义中可以有两个同名函数,这种现象称为函数()。

(A)封装(B)继承(C)覆盖(D)重载5.在类的定义中构造函数的作用是()。

(A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量6.下面关键字中,哪一个不是用于异常处理语句()。

(A)try (B)break(C)catch (D)finally7.类与对象的关系是()。

(A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例8.下面哪一个是Java中不合法的标识符()。

(A)$persons (B)twoNum(C)_myVar (D)*point9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。

(A)static void method( )(B)public void method( )(C)final void method( )(D)abstract void method( )10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的()。

(A)ArrayList myList=new Object( )(B)List myList=new ArrayList( )(C)ArrayList myList=new List( )(D)List myList=new List( )源文件和编译后的文件扩展名分别为()(A) .class和 .java (B).java和 .class(C).class和 .class (D) .java和 .java12.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( )方法来完成一些画图操作。

java程序设计期末考试题及答案

java程序设计期末考试题及答案

java程序设计期末考试题及答案一、选择题(每题2分,共20分)1. 在Java中,以下哪个关键字用于声明一个类?A. classB. interfaceC. structD. enum答案:A2. Java中,哪个类是所有Java类的根类?A. ObjectB. SystemC. StringD. Math答案:A3. 下列哪个数据类型是Java中的原始数据类型?A. StringB. IntegerC. intD. ArrayList答案:C4. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. defD. void5. 下列哪个选项是Java中的合法标识符?A. 2variableB. variable2C. $variableD. variable-答案:B6. 在Java中,哪个关键字用于实现多态?A. extendsB. implementsC. overrideD. abstract答案:A7. Java中的集合框架中,哪个接口提供了添加和删除元素的方法?A. ListB. SetC. MapD. Queue答案:A8. 在Java中,下列哪个关键字用于抛出异常?A. tryB. catchC. throwD. finally答案:C9. Java中,哪个关键字用于声明一个线程?B. runnableC. synchronizedD. volatile答案:B10. 在Java中,下列哪个选项是正确的字符串连接操作?A. "Hello" + 5B. "Hello" + "World"C. 5 + "Hello"D. "Hello" * 3答案:B二、填空题(每题2分,共20分)1. Java中的________关键字用于声明一个接口。

答案:interface2. Java中的________关键字用于实现一个接口。

《JAVA语言程序设计》期末考试试卷附答案

《JAVA语言程序设计》期末考试试卷附答案

《JAVA语言程序设计》期末考试试卷附答案一、判断(每小题2分,共10分)1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。

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

()3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。

()4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。

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

()二、单选(每小题3分,共60分)1.关于选择结构下列哪个说法正确?()A.if语句和 else语句必须成对出现 B.if语句可以没有else语句对应C.switch结构中每个case语句中必须用break语句 D.switch结构中必须有default 语句2.while循环和 do…while循环的区别是:()A.没有区别,这两个结构任何情况下效果一样B.while循环比 do…while循环执行效率高C.while循环是先循环后判断,所以循环体至少被执行一次D.do…while循环是先循环后判断,所以循环体至少被执行一次3.关于 for循环和 while循环的说法哪个正确?()A.while循环先判断后执行,for循环先执行后判断。

B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果C.两种循环任何时候都不可以替换D.两种循环结构中都必须有循环体,循环体不能为空4.下列修饰符中与访问控制无关的是()A.private B.Public C.Protected D.final5. void的含义:()A.方法没有返回值B.方法体为空 C.没有意义 D. 定义方法时必须使用6. return语句:()A.只能让方法返回数值B.方法都必须含有 C.方法中可以有多句return D.不能用来返回对象7.关于对象成员占用内存的说法哪个正确?()A.同一个类的对象共用同一段内存B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C.对象的方法不占用内存D.以上都不对8.下列说法哪个正确?()A.不需要定义类,就能创建对象 B.对象中必须有属性和方法C.属性可以是简单变量,也可以是一个对象 D、属性必须是简单变量9.下列说法哪个正确?()A、一个程序可以包含多个源文件B、一个源文件中只能有一个类C、一个源文件中可以有多个公共类D、一个源文件只能供一个程序使用10.关于方法main()的说法哪个正确?()A.方法main()只能放在公共类中 B main()的头定义可以根据情况任意更改C.一个类中可以没有main()方法 D.所有对象的创建都必须放在main()方法中11.构造函数何时被调用?()A、创建对象时B、类定义时C、使用对象的方法时D、使用对象的属性时12.抽象方法:()A、可以有方法体B、可以出现在非抽象类中C、是没有方法体的方法D、抽象类中的方法都是抽象方法13.关于继承的说法正确的是:()A、子类将继承父类所有的属性和方法。

大学《JAVA语言程序设计》期末考试试题及答案

大学《JAVA语言程序设计》期末考试试题及答案

JAVA语言程序设计期末考试试题及答案3应考必备题库一、单项选择题1、如下哪个是Java中的标识符A、publicB、superC、3numberD、width2、如下哪个是Java中的标识符A、fieldnameB、superC、3numberD、number3、已知如下定义:String s = "story"; 下面哪个语句不是合法的A、s += "books";B、s = s + 100;C、int len = s.length;D、String t = s + “abc”;4、如下哪个是Java中有效的关键字A、nameB、helloC、falseD、good5、下面的代码段执行之后count的值是什么int count = 1;for int i = 1; i <= 5; i++ {count += i;}System.out.printlncount;A、5B、1C、15D、166、定义一个类,必须使用的关键字是A、publicB、classC、interfaceD、static7、定义一个接口必须使用的关键字是A、publicB、classC、interfaceD、static8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是A、p.addb;B、p.addb,"North";C、p.addb,"South";D、b.addp,"North";9、声明并创建一个按钮对象b,应该使用的语句是A、Button b=new Button;B、button b=new button;C、Button b=new b;D、b.setLabel“确定”;10、Frame对象默认的布局管理器是A、FlowLayoutB、BorderLayoutC、CardLayoutD、null11、下列哪一个import命令可以使我们在程序中创建输入/输出流对象A、import java.sql.;B、import java.util.;C、import java.io.;D、import java.;12、下面哪一个import命令可以为我们提供编写网络应用程序的类A、import java.sql.;B、import java.util.;C、import java.io.;D、import java.;13、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象A、FileInputStreamB、FileOutputStreamC、DataOutputStreamD、FileWriter二、填空题1、如果将类MyClass声明为public,它的文件名称必须是MyClass.java才能正常编译;2、Java程序中的单行注释符是// ,多行注释符是/ / ;3、Java中布尔类型的常量有两种,它们是true和false;4、Java中用于定义小数的关键字有两个:float和double,后者精度高于前者;5、Java中用于两个数相等比较的运算符是:==,用于不相等比较的运算符是<>;6、在Java中定义一个字符串类型的变量str的语句是:String str; ,定义一个具有10个元素的整型数组a的语句是:int arr = new int10; ;7、导入mypackage包中的所类的命令是import mypackage.; ;8、当声明一个数组int arr = new int5; 时,这代表这个数组所保存的变量类型是int,数组名是arr,数组的大小为5,数组元素下标的使用范围是0到4;9、假设x=13,y=4,则表达式x%y = 0的值是true,其数据类型是boolean;10、异常处理是由try、catch和finally块三个关键所组成的程序块;11、以下程序段的输出结果是三角形int x = 5, y = 6, z = 4;if x + y > z && x + z > y && z + y > xSystem.out.println"三角形";elseSystem.out.println"不是三角形";12、下面程序段的执行结果是6 5 4 3 2int a = { 2, 3, 4, 5, 6 };for int i = a.length - 1; i >= 0; i--System.out.printai + "";三、程序阅读题1、以下程序的输出结果为_Peter is 17 years old___;public class Person {String name;int age;public PersonString name, int age { = name;this.age = age;}public static void mainString args {Person c = new Person"Peter", 17; + " is " + c.age + " years old";}}2、以下程序的输出结果为__课程号:101 课程名:ASP 学分:3___;public class Course {private String cNumber;private String cName;private int cUnit;public CourseString number, String name, int unit {cNumber = number;cName = name;cUnit = unit;}public void printCourseInfo {System.out.println"课程号:" + cNumber + " 课程名:" + cName + " 学分:" + cUnit;}}class CourseTest {public static void mainString args {Course c;c = new Course"101", "ASP", 3;c.printCourseInfo;}}3、以下程序的输出结果为__汤姆猫体重:20.0斤___;public class Tom {private float weight;private static String name;public void setWeight float weight {this.weight = weight;}private void out {System.out.println name + "体重:" + weight + "斤";}public static void mainString args { = "汤姆猫";Tom cat = new Tom;cat.setWeight20;cat.out;}}4、以下程序的输出结果__;public class Father {String name, address, tel;int age;public FatherString name, int age { = name;this.age = age;}void out {System.out.print"姓名:" + name;System.out.print" 年龄:" + age;}void outOther {System.out.print" 家庭住址:" + address;System.out.print" 电话:" + tel;}}class Son extends Father {String school;public SonString name, int age {super name, age;}void out {super.out;super.outOther;System.out.println" 学校:" + school;}public static void mainString args {Son son = new Son"Tom", 15;son.address = "金水区";son.school = "九中";son.tel = ;son.out;}}5、下列程序的运行结果是__12345____; public class MyClass {int a = { 1, 2, 3, 4, 5 };void out {for int j = 0; j < a.length; j++System.out.print a j + "";}public static void mainString args {MyClass my = new MyClass;my.out;}}四、简答题1、简述Java中异常处理的机制答:首先Java的异常是面向对象的;一个Java的Exception是一个描述异常情况的对象.当出现异常情况时,一个Exception对象就产生了,并放到异常的成员函数里;Java的异常处理是通过5个关键词来实现的:try,catch,throw,throws和finally;1.异常处理:在Java语言的错误处理结构由try,catch,finally三个块组成;其中try块存放将可能发生异常的Java语言,并管理相关的异常指针;catch块紧跟在try块后面,用来激发被捕获的异常;finally块包含清除程序没有释放的资源,句柄等;不管try块中的代码如何退出,都将执行 finally块;2.抛出异常:Java语言可以不在方法中直接捕获,而用throw语句将异常抛给上层的调用者;Throw语句就是来明确地抛出一个异常;首先你必需得到一个Throwable的实例句柄,通过参数传到catch中,或者采用new操作符来创建一个;2、什么是继承答:通过必要的说明能够实现某个类无需重新定义就拥有另一个类的某些属性和方法,并把这种关系称为继承,先定义的类称为父类,后定义的类称为子类,并且允许多层的继承关系;3、请简述重载和重写的区别答:方法的重写Overriding和重载Overloading是Java多态性的不同表现;重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现;如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写Overriding;子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了;如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载Overloading;Overloaded的方法是可以改变返回值的类型;五、程序设计题1、按以下要求编写程序1 创建一个Rectangle类,添加width和height两个成员变量2 在Rectangle中添加两种方法分别计算矩形的周长和面积3 编程利用Rectangle输出一个矩形的周长和面积解答:public class Rectangle {float width, height;public Rectangle float width, float height {this.width = width;this.height = height;}public float getLength{return this.width + this.height 2;}public float getArea{return this.width this.height;}public static void mainString args {Rectangle rect = new Rectangle10, 20;System.out.println"周长是:" + rect.getLength;System.out.println"面积是:" + rect.getArea;}}2、按以下要求编写程序1 编写Animal接口,接口中声明run 方法2 定义Bird类和Fish类实现Animal接口3 编写Bird类和Fish类的测试程序,并调用其中的run方法解答:public interface Animal {void run;}class Bird implements Animal {public void run {System.out.println"鸟儿在飞...";}}class Fish implements Animal {public void run {System.out.println"鱼儿在游...";}}public class TestAnimal {public static void mainString args {Bird bird = new Bird;bird.run;Fish fish = new Fish;fish.run;}}3、编写一个Frame框架应用程序,要求如下:1 在窗口设置两个菜单“文件”、“编辑”2 在“文件”菜单里添加三个菜单项“打开”、“保存”、“关闭”3 在“编辑”菜单里添加两个菜单项“复制”、“粘贴”4 点击关闭菜单项时,使程序关闭;解答:importimportimportimportimportimportimportimportimport/主窗体/public class MyFrame extends Frame {private static final long serialVersionUIDprivate Frame frmMain; // 窗体MenuBar mb; // 菜单栏Menu mnuFile; // "文件"菜单Menu mnuEdit; // "编辑"菜单MenuItem miOpen; // "打开"菜单项MenuItem miSave; // "保存"菜单项MenuItem miClose; // "关闭"菜单项MenuItem miCopy; // "复制"菜单项MenuItem miPaste; // "粘贴"菜单项public MyFrame {frmMain = new Frame"主窗体";// 创建菜单栏mb = new MenuBar;// 创建菜单mnuFile = new Menu"文件";mnuEdit = new Menu"编辑";// 创建菜单项miOpen = new MenuItem"打开";miSave = new MenuItem"保存";miClose = new MenuItem"关闭";miCopy = new MenuItem"复制";miPaste = new MenuItem"粘贴";}public void showFrame {frmMain.setSize800, 600;frmMain.setLocation100, 100;frmMain.setBackgroundColor.white;frmMain.setVisible true;frmMain.setLayout null;frmMain.addWindowListener new WindowHandler; // 注册窗口监听器// 将菜单栏放入窗体中frmMain.setMenuBar mb;// 将菜单放入菜单栏中mb.add mnuFile;mb.add mnuEdit;// 将菜单项放入菜单中mnuFile.add miOpen;mnuFile.add miSave;mnuFile.add miClose;mnuEdit.add miCopy;mnuEdit.add miPaste;// 注册动作事件监听器miClose.setActionCommand"miClose_Clicked";miClose.addActionListener new MenuHandler;}// 定义一个内部类,在这个类中编写窗口关闭事件处理程序;private class WindowHandler extends WindowAdapter {public void windowClosingWindowEvent e {System.exit0; // 退出应用程序,状态码 0 表示正常终止,非 0 表示异常终止;}}// 定义一个内部类,在这个类中编写动作事件处理程序;private class MenuHandler implements ActionListener {public void actionPerformedActionEvent e {if e.getActionCommand == "miClose_Clicked" {System.exit0; // 退出应用程序}}}}public class TestMyFrame {public static void mainString args {// 启动主窗体MyFrame guiWindow = new MyFrame;guiWindow.showFrame;} }。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《JA V A程序设计》期末考试试题(五)一、单选题1、当某一线程正处于休眠状态,而另一个线程用Thread 类中的interrupt() 方法中断它时,抛出的异常类型是()。

A) IOException B) RuntimeExceptionC) InterruptedException D) ClassNotFoundException2、下面的程序段的功能是( )。

File("d:\\xxx\\yyy\\zzz");();A)在当前目录下生成子目录:\xxx\yyy\zzz B)生成目录:e:\xxx\yyy\zzzC)在当前目录下生成文件xxx.yyy.zzz D)以上说法都不对3、应用程序的main方法中有以下语句,则输出的结果是( )。

String s = "xxxxxxxxxxxxxxx#123#456#zzzzz";int n = s.indexOf("#");int k = s.indexOf("#", n+1);String s2 = s.substring(n+1, k);System.out.println(s2);A) 123456 B) 123 C) xxxxxxxxxxxxxxx D) zzzzz4、关于下面的程序Test.java说法正确的是( )。

public class Test {String x="1";int y;public static void main(String args[]) {int z=2;System.out.println(x+y+z);}}A)3 B)102 C) 12 D)程序有编译错误5、应用程序的main方法中有以下语句,则输出的结果是( )。

int b[][]={{1, 1, 1}, {2,2}, {3}};int sum=0;for(int i=0; i<b.length; i++) {for(int j=0; j<b[i].length; j++) {sum+=b[i][j];}}System.out.println("sum="+sum);A) 10 B)6 C) 9 D) 136、应用程序的main方法中有以下语句,则执行后输出的结果是( )。

int[] x = {125,21,5,168,98};int min = x[0];for (int i=1; i<x.length; i++){if(x[i] < min)min = x[i];}System.out.println(min);A) 125 B) 5 C) 98 D) 1687、应用程序的main方法中有以下语句,则输出的结果是( )。

Hashtable hashtable=new Hashtable();hashtable.put("100","aaa");hashtable.put("200","bbb");hashtable.put("300","ccc");System.out.println(hashtable.get("300").toString()+ hashtable.get("200").toString()+ hashtable.get("100").toString());A) aaa B) bbb C) ccc D) cccbbbaaa8、以下关于java异常说法不正确的是()。

A) Throwable 类是Java 语言中Error类和Exception类的父类。

B)当异常对象是Exception类(或其子类)的实例时,能通过Java 虚拟机或者throw 语句抛出该异常对象,并能通过try…catch…finally处理。

C)如果只用一个catch块捕捉多个异常对象,则catch 子句中的参数类型应是所有异常对象的父类。

D)以上说法都不对。

9、下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt 的内容是( )。

import java.io.*;public class Test {public static void main(String args[]) {try {String s="ABCDE";byte b[]=s.getBytes();("test.txt", true);(b);();}catch(IOException e) {System.out.println(e.toString());}}}A) ABCABC B) ABCDE C)Test D) ABCDE ABCDE ABCDE10、下面说法不正确的是( )?A)列表(List)、集合(Set)和映射(Map)都是java.util包中的接口。

B)List接口是可以包含重复元素的有序集合。

C)Set接口是不包含重复元素的集合。

D)Map接口将键映射到值,键可以重复,但每个键最多只能映射一个值。

二、多选题1、下面哪些关键字能用来控制对类成员的访问( )?A) public B) protected C) private D) default2、下面关于Java中异常处理try块的说法正确的是( )?A) try块后通常应有一个catch 块,用来处理try块中抛出的异常。

B) catch 块后必须有finally块。

C)可能抛出异常的方法调用应放在try块中。

D)对抛出的异常的处理必须放在try块中3、线程对象的生命周期中,通常经历下面哪些状态()。

A)新建B)运行C)就绪D)死亡4、定义如下的二维数组b,下面的说法正确的是( )。

int b[][]={{1, 2, 3}, {4, 5},{6, 7, 8}}};A)b.length的值是3。

B)b[1].length的值是3。

C)b[1][1]的值是5。

D)二维数组b的第一行有3个元素5、类B是一个抽象类,类C是类B的非抽象子类,下列创建对象x1的语句中正确的是( )。

A) B x1= new B( ); B) B x1= new C( );C) C x1=new C( ); D) C x1= new B( );6、下面关于进程、线程的说法正确的是( )。

A)进程是程序的一次动态执行过程。

一个进程在其执行过程中,可以产生多个线程——多线程,形成多条执行线索。

B)线程是比进程更小的执行单位,是在一个进程中独立的控制流,即程序内部的控制流。

线程本身不能自动运行,栖身于某个进程之中,由进程启动执行。

C)Java多线程的运行与平台相关。

D)对于单处理器系统,多个线程分时间片获取CPU或其他系统资源来运行。

对于多处理器系统,线程可以分配到多个处理器中,从而真正的并发执行多任务。

7、下面关于外部类和内部类成员的相互访问的规则中,正确的选项是( )。

A)内部类可以直接访问外部类的成员B)外部类可以直接访问内部类的成员C)外部类不能访问内部类的成员D)外部类可通过创建内部类的实例来访问内部类的成员三、程序阅读题1、阅读下面的程序代码,并回答问题(◆问3分,❖问3分,共6分)。

String s1 = new String("abcde");String s2 = new String("abcde");boolean b1= s1.equals(s2);boolean b2 = s1== s2;System.out.print(b1+" "+b2);◆程序段执行后,在命令行的输出结果如何?❖解释输出(1)的结果的原因?答案:◆ true false❖equals方法比较两个字符串的内容是否相等;运算符“==”判断两个对象是否指向同一个引用,即是否为同一个对象。

2、阅读下面的程序,并回答问题(◆问3分,❖问3分,共6分)。

import java.io.*;public class Test {public static void main(String args[]) throws IOException {BufferedReader buf=new BufferedReader(new InputStreamReader(System.in));while(true) {String str = buf.readLine();if(str.equals("quit"))break;int x=Integer.parseInt(str);System.out.println(x*x);}}}编译运行上面的程序:◆从键盘输入10,回车后输出的结果如何?❖从键盘输入exit,回车后程序能正确执行吗?为什么?答案:◆100❖不能;因为方法Integer.parseInt(str)不能将字符串“exit”转化为整数,抛出异常。

3、写出下面的程序编译、运行后的结果(6分)。

public class Test{public static void main(String args[]) {new Student("Tom", 'm', 90, 88);new Student("Jack", 'm', 66, 89);new Student("Mary", 'f', 76, 86);System.out.println("name\tsex\tchinese\tenglish");Student.print();}}class Student {protected String name;protected char sex;protected int chinese;protected int english;protected Student next;static Student list;Student (String name, char sex, int chinese, int english) {=name;this.sex=sex;this.chinese=chinese;this.english=english;this.next=list;list=this;}static void print() {Student friend=list;if (friend==null)System.out.println("The list is empty.");else {do{System.out.println(friend.toString());friend=friend.next;}while(friend!=null);}}public String toString() {return new String(name+"\t"+sex+"\t"+chinese+"\t"+english);}}答案:name sex chinese englishMary f 76 86Jack m 66 89Tom m 90 88《JA V A程序设计》期末考试试题(六)一、填空题1.定义类的保留字是(class ),定义接口的保留字是( interface )。

相关文档
最新文档