山东大学Java高程序语言期末考试题(含答案)
山东大学2008年Java高级程序设计语言期末试卷

If you want to store into the String name the value “George Bush”, you would do which statement? a) String name = "George Bush"; b) String name = new String("George Bush"); c) String name = "George" + " " + "Bush"; d) Any of the above would work 6. If a, b, and c are int variables with a = 5, b = 7, c = 12, then the statement int z = (a * b – c) / a; will result in z equal to a) 0 b) 4 c) 5 d) –5 7. What is output with the statement System.out.println(""+x+y); if x and y are int values where x=10 and y=5? a) 15 b) 10 5 c) 105 d) An error since neither x nor y is a String 8. Which of the following would return the last character of the String x? a) x.charAt(0); b) x.charAt(last); c) x.charAt(length(x)); d) x.charAt(x.length( )-1); 9. Which properties are true of String objects? a) Their lengths never change b) The shortest string has zero length c) Individual characters within a String may be changed using the replace method d) Only (a) and (b) are true 10. Since you cannot take the square root of a negative number, you might use which of the following instructions to find the square root of the variable x? a) Math.sqrt(x*x); b) Math.sqrt((int) x); c) Math.sqrt(Math.abs(x)); d) Math.abs(Math.sqrt(x));
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期末考试题及答案解析一、选择题1. Java语言是一种:A. 编译型语言B. 解释型语言C. 编译型和解释型语言D. 汇编语言答案:C2. 下列哪个不是Java的基本数据类型?A. intB. floatC. doubleD. string答案:D3. Java中的main方法必须定义为:A. public static void main(String args[])B. private static void main(String args[])C. protected static void main(String args[])D. public static int main(String args[])答案:A二、填空题1. Java程序的执行入口是________。
答案:main方法2. Java语言支持的两种继承方式是单继承和________。
答案:接口继承3. 在Java中,用于定义常量的关键字是________。
答案:final三、简答题1. 简述Java语言的跨平台特性。
答案:Java语言的跨平台特性主要得益于Java虚拟机(JVM)的概念。
Java代码首先被编译成字节码,然后可以在任何安装了相应版本Java虚拟机的平台上运行。
这种“一次编写,到处运行”的特性使得Java程序可以在不同的操作系统和硬件平台上无缝运行。
2. 描述Java集合框架中List、Set和Map三者的区别。
答案:List是一个有序集合,允许元素重复;Set是一个不允许重复元素的集合,且无序;Map是一个键值对集合,每个键只能映射一个值,键不允许重复,但值可以重复。
四、编程题1. 编写一个Java程序,实现计算两个整数相加的结果。
```javapublic class SumCalculator {public static void main(String[] args) {int num1 = 10;int num2 = 20;int sum = num1 + num2;System.out.println("The sum is: " + sum);}}```2. 编写一个Java程序,实现对一个字符串进行反转。
JAVA程序设计—山大20年考试复习题库及部分答案

--.多选题(16分)1、在Java中,以下哪种情况被视为错误?()A、内存芯片故障B、试图用零去除时C、未向用户分配存储单元的引用D、试图执行非法的指令学生答案:AD2、以下哪个是关于Java的正确说法()A具有编译器B、具有解释程序C、具有编译器和解释程序D、具有字节码阅读器学生答案:D3、当我们希望在发生某些条件时跳出循环,可以使用()A.break语句B、continue语句C、exit语句学生答案:AB4.Java语言在体系结构上是()A、定向的B、抽象的C、无关的D、特定的学生答案:BC二、简答题(15分)5、abstract class和interface有什么区别学生答案:声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。
不能创建abstract 类的实例。
然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。
不能有抽象构造函数或抽象静态方法。
Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。
取而代之,在子类中实现该方法。
知道其行为的其它类可以在类中实现这些方法。
接口(interface)是抽象类的变体。
在接口中,所有方法都是抽象的。
多继承性可通过实现这样的接口而获得。
接口中的所有方法都是抽象的,没有一个有程序体。
接口只可以定义static final成员变量。
接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。
当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。
然后,它可以在实现了该接口的类的任何对象上调用接口的方法。
由于有抽象类,它允许使用接口名作为引用变量的类型。
通常的动态联编将生效。
引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。
三、单选题(26分)6、何时抛掷Error异常?()A、当发生动态链接失败或JVM本身发生某些知命错误时B、当OS中的中断处理程序不处理生成的中断时C、当运行时异常系统无法处理它时以上都是学生答案:A7、使用以下哪些修饰符进行修饰时,子类不可访问其变量?()A、ProtectedB、PrivateC、以上两者都是D、以上都不是学生答案:B8、下面语句段的输出结果是什么?()inti=9;switch(i){default:System.out.printn("default");case 0:System.out.printn("zero");break;case 1:System.out.printn("one");case 2:System.out.printn("two");}A、defaultB、default,zeroC、error default clause not definedD、no output displayed 学生答案:B9、引用抽象类的引用变量可以初始化为()A、抽象类的对象B、抽象类子类的对象C、以上两者都是D、以上都不是学生答案:B10、可在方法的作用域中抛掷的异常是:()A.使用Java的throw语句的方法直接抛掷的异常B、被方法通过调用其他方法抛掷的异常上面的a和b以上都不是学生答案:C11、以下关于接口的说法哪些是错误的?()A、创建接口层次结构是可能的。
大学Java期末考试题库及答案

大学Java期末考试题库及答案第一部分:选择题1. 下列关于Java语言的说法错误的是:A. Java语言是一种解释性语言B. Java语言是一种面向对象的语言C. Java语言的跨平台特性使得它可以在不同的操作系统上运行D. Java语言最初由Sun公司开发,现在属于Oracle公司的产品答案:A2. 下列哪个不是Java中的基本数据类型?A. doubleB. booleanC. intD. string答案:D3. 下列哪种语句可以用来终止一个循环体从而强制退出循环?A. breakB. continueC. returnD. exit答案:A第二部分:编程题1. 编写一个Java程序,输出1-100中的所有偶数。
答案:public class EvenNumbers {public static void main(String[] args) {for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {System.out.println(i);}}}}2. 编写一个Java程序,找到一个数组中的最大值。
答案:public class MaxValue {public static void main(String[] args) { int[] arr = {5, 2, 9, 10, 25, 1};int max = arr[0];for (int i = 1; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}}System.out.println(max);}}第三部分:简答题1. 什么是Java虚拟机?答:Java虚拟机(JVM)是一个能够执行Java字节码的虚拟机器。
它是Java平台的中心组件之一,负责将Java程序转换成真正能够在计算机上运行的指令。
2. 什么是Java中的类?答:Java中的类是一种数据结构,包括了数据和方法。
java期末试题及答案文库

java期末试题及答案文库Java 期末试题及答案文库Java 语言作为一门重要的编程语言,被广泛应用于软件开发、移动应用、Web 应用等领域。
在Java 学习过程中,期末考试是对学生掌握程度的重要检验。
为了帮助同学们更好地准备期末考试,本文将提供一个Java期末试题及答案的文库,供大家参考学习。
一、选择题1. 下面哪个选项代表Java中的访问修饰符?a. publicb. privatec. protectedd. all of the above答案:d2. Java 中的多态是指什么?a. 对象在运行时才能确定其类型b. 对象可以同时拥有多个类型c. 子类可以覆盖父类的方法d. 父类可以引用子类对象3. 下面哪个关键字用于声明一个常量?a. finalb. staticc. constantd. const答案:a二、填空题1. Java 中通过关键字____实现类与类之间的继承。
答案:extends2. Java 中,通过关键字_____定义一个抽象类。
答案:abstract3. 在Java中,______是一种重要的异常处理机制。
答案:try-catch三、代码题1. 编写一个Java类,实现一个计算器的功能,包括加法、减法、乘法和除法四种运算。
要求使用面向对象的思想,将每种运算封装成一个方法,并在主方法中进行调用。
public class Calculator {public int add(int num1, int num2) {return num1 + num2;}public int subtract(int num1, int num2) {return num1 - num2;}public int multiply(int num1, int num2) {return num1 * num2;}public double divide(int num1, int num2) {if (num2 != 0) {return (double) num1 / num2;} else {throw new ArithmeticException("除数不能为0"); }}public static void main(String[] args) {Calculator calculator = new Calculator();System.out.println("1 + 2 = " + calculator.add(1, 2));System.out.println("3 - 2 = " + calculator.subtract(3, 2));System.out.println("2 * 4 = " + calculator.multiply(2, 4));System.out.println("6 / 3 = " + calculator.divide(6, 3));}}```四、应用题1. 编写一个Java程序,实现一个简单的学生成绩管理系统。
-山东大学Java高级程序语言期末考试题(含答案)

1.下列关于计算机系统和Java编程语言的说法,正确的是(C)A.计算机是由硬件、操作系统和软件组成,操作系统是缺一不可的组成部分。
B.Java语言编写的程序源代码可以不需要编译直接在硬件上运行。
C.在程序中书写注释不会影响程序的执行,可以多写一些详细的注释。
D.Java的集成开发环境(IDE),如Eclipse,是开发Java语言必需的软件工具。
2.下列选项中符合Java命名规则的标识符是(D)A.2japro B. &Class C. const D. _1233.下列在Java语言中关于数据类型和包装类的说法,正确的是(B)A.基本(简单)数据类型是包装类的简写形式,可以用包装类替代基本(简单)数据类型。
B.long和double都占了64位(64bit)的存储空间。
C.默认的整数数据类型是int,默认的浮点数据类型是float。
D.和包装类一样,基本(简单)数据类型声明的变量中也具有静态方法,用来完成进制转化等。
4.下面赋值语句中正确的是(A)A.double d=5.3e12;B. float f=11.1;C.int i=0.0;D. Double oD=3;5.如果int x=20, y=5,则语句System.out.println(x+y +""+(x+y)+y); 的输出结果是(D)A.2530B. 55C. 2052055D. 252556.如下Java语句double x=2.0; int y=4; x/=++y; 执行后,x的值是(C)A.0.5B. 2.5C. 0.4D. 2.07.下列关于Java语言中String和char的说法,正确的是(C)A.String是Java定义的一种基本数据类型。
B.String是以“\0”结尾的char类型的数组char[]。
C.使用equals()方法比较两个String是否内容一样(即字符串中的各个字符都一样)。
JAVA语言程序设计期末考试题及答案

《JAVA语言程序设计》期末考试试题及答案1(应考必备题库)一、单选择题1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. javaB. .classC. htmlD. .exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。
A. 3B. 3. 5C. 4D. 53、不允许作为类及类成员的访问控制符的是( )。
A. publicB. privateC. staticD. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )5 给定java 代码如下,编译运行后,输出结果是()(选择一项)。
public class test {static int i;public int aMethod() {i++;return i;}public static void main (String args[]) {Test test=new Test() ;test.aMethod () ;System.out.println (test.aMethod()) ;} }a) 0 b) 1 c) 2 d) 3二、填空题1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。
2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。
3、设x = 2 ,则表达式( x + + )/3 的值是0 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.下列关于计算机系统和Java编程语言的说法,正确的是(C)A.计算机是由硬件、操作系统和软件组成,操作系统是缺一不可的组成部分。
B.Java语言编写的程序源代码可以不需要编译直接在硬件上运行。
C.在程序中书写注释不会影响程序的执行,可以多写一些详细的注释。
D.Java的集成开发环境(IDE),如Eclipse,是开发Java语言必需的软件工具。
2.下列选项中符合Java命名规则的标识符是(D)A.2japro B. &Class C. const D. _1233.下列在Java语言中关于数据类型和包装类的说法,正确的是(B)A.基本(简单)数据类型是包装类的简写形式,可以用包装类替代基本(简单)数据类型。
B.long和double都占了64位(64bit)的存储空间。
C.默认的整数数据类型是int,默认的浮点数据类型是float。
D.和包装类一样,基本(简单)数据类型声明的变量中也具有静态方法,用来完成进制转化等。
4.下面赋值语句中正确的是(A)A.double d=5.3e12;B. float f=11.1;C.int i=0.0;D. Double oD=3;5.如果int x=20, y=5,则语句System.out.println(x+y +""+(x+y)+y); 的输出结果是(D)A.2530B. 55C. 2052055D. 252556.如下Java语句double x=2.0; int y=4; x/=++y; 执行后,x的值是(C)A.0.5B. 2.5C. 0.4D. 2.07.下列关于Java语言中String和char的说法,正确的是(C)A.String是Java定义的一种基本数据类型。
B.String是以“\0”结尾的char类型的数组char[]。
C.使用equals()方法比较两个String是否内容一样(即字符串中的各个字符都一样)。
D.Char类型在Java语言里面存储的是ASCII码。
8.下列关于Java中类的构造方法的描述,正确的是(B)A.构造方法的返回类型为voidB. 可以定义一个类而在代码中不写构造方法。
C. 在同一个类中定义的重载构造方法不可以相互调用。
D. 子类不允许调用父类的构造方法。
9.下列关于Java类中方法的定义,正确的是(D)A.若代码执行到return语句,则将当前值返回,而且继续执行return语句后面的语句。
B.只需要对使用基本数据类型定义的属性使用getter和setter,体现类的封装性。
C.方法的返回值只能是基本数据类型。
D.在同一个类中定义的方法,允许方法名称相同而形参列表不同,并且返回值数据类型也不同。
10. 关于Java语言中的final关键字的使用,下列说法正确的是(C)A.在使用final关键字定义的方法里面使用final关键字定义变量。
B.使用final关键字定义变量,必须在变量定义的同时给定变量的具体数值,完成变量初始化。
C.final关键字可以用来修饰方法,表明此方法不可以被子类重写。
D.使用final关键字定义变量,必须同时使用static关键字。
11. 以下关于Object类的说法正确的是(A)A. Java中所有的类都直接或间接继承自Object,无论是否明确的指明,无论其是否是抽象类。
B. Java中的接口(interface)也继承了Object类C. 利用“==”比较两个对象时,Java调用继承自Object的equals方法,判断是否相等。
D.如果类的定义中没有重新定义toString()方法,则该类创建的对象无法使用toStrig()方法。
12.A.a=10 t.a=3 B. a=11 t.a=2 C. a=12 t.a=1 D. a=11 t.a=113. 以下关于abstract关键字的说法,正确的是(D)A.abstract 可以与final 并列修饰同一个类。
B.abstract 类中不可以有private的成员。
C.abstract 类中必须全部是abstract方法。
D.abstract方法必须在abstract 类中。
14. 下列关于继承的描述正确的是(C)A.在Java中允许定义一个子类的引用,指向父类的对象。
B.在Java中一个子类可以继承多个抽象类,在extends关键字后依次列出,用逗号隔开。
C.在Java中继承是通过extends关键字来描述的,而且只允许继承自一个直接父类。
D.在Java中抽象类之间不允许出现继承关系,所有的抽象类都相互独立。
15. 下列关于包(package)的描述,正确的是(D)A.包(package)是Java中描述操作系统对多个源代码文件组织的一种方式。
B.import语句将所对应的Java源文件拷贝到此处执行。
C.包(package)是Eclipse组织Java项目特有的一种方式。
D.定义在同一个包(package)内的类可以不经过import而直接相互使用。
16. 关于下面代码int[] x=new int[25]; 描述正确的是(C)A. x[25]存放了数据“\0”。
B. x[24] 存放了数据“\0”。
C. 若访问x[25],程序将抛出异常。
D. x[1]访问此数组的第一个元素。
17.若采用命令行“java Test one two three”调用,则程序输出的结果为:BA.Test B. one C. two D. java18. 对于文件的描述正确的是(D)A. 文本文件是以“.txt”为后缀名的文件,其他后缀名的文件是二进制文件。
B. File类是Java中对文件进行读写操作的基本类。
C. 无论文本文件还是二进制文件,读到文件末尾都会抛出EOFException异常。
D. Java中对于文本文件和二进制文件,都可以当作二进制文件进行操作。
19. 对于Java中异常的描述正确的是(D)A.用throws定义了方法可能抛出的异常,那么调用此方法时一定会抛出此异常。
B.如果try块中没有抛出异常,finally块中的语句将不会被执行。
C.抛出异常意味着程序发生运行时错误,需要调试修改。
D.Java中所有的可不检测(unchecked)异常都来自RuntimeException类或其子类。
20.可以放入到横线位置,使程序正确编译运行,而且不产生错误的选项是(C)A. public void foo(){}B. public int foo(){return 1;}C. public A foo(B b){return b;}D. public A foo(){return A;}二、读程序题(四选三,共计24分)1.public class ReadOne {public static void main(String[] args) {int count = 0;for (int index = 0; index <= 20; index++) {switch (index++ % 4) {case 0:count = ++index;case 1:count += index;break;default:System.out.println(count);}}}}2.public class ReadTwo {public static final int N=4;public static void main(String[] args) {int[][] m = new int[N][N];Calc(m, N);Print(m);}public static void Calc(int[][] m, int num) {int k = N;for (int i = 0; i <= num / 2; i++) {for (int j = i; j < num - i; j++)m[i][j] = k++;for (int j = i + 1; j < num - i; j++)m[j][num - i - 1] = k++;for (int j = num - i - 2; j >= i; j--)m[num - i - 1][j] = k++;for (int j = num - i - 2; j > i; j--)m[j][i] = k++;}}public static void Print(int[][] m) {for (int i = 0; i < m.length; i++) {for (int j = 0; j < m[i].length; j++)System.out.print(m[i][j]+"\t");System.out.println();}}}3. public class ReadThree {static public void main(String[] args) {ExceptionScope demo = new ExceptionScope();demo.level1();}}class ExceptionScope {public void level1() {System.out.println("Level 1 beginning.");try {level2();} catch (Exception problem) {System.out.println("Exception Unknown");}System.out.println("Level 1 ending.");}public void level2() {System.out.println("Level 2 beginning.");String[] codes = { "A370", "A37A",""};char zone;int number;for (int i = 0; i <= codes.length; i++) {try {zone = codes[i].charAt(0);number = Integer.parseInt(codes[i].substring(1, 4));System.out.println("zone: " + zone + "\tnumber: " + number);} catch (StringIndexOutOfBoundsException exception) {System.out.println("Improper code length ");} catch (NumberFormatException exception) {System.out.println("Improper numeric value");} finally {System.out.println("processing" + i);}}System.out.println("Level 2 ending.");}}4. public class ReadFour {public static void main(String[] args) {String s = "1234";List(s.toCharArray(), s.length(), 0);}private static void swap(char[] a, int x, int y) {char temp = a[x];a[x] = a[y];a[y] = temp;}public static void List(char[] array, int n, int k) {if (n == k) {if (array[2] != '4') {String str = new String(array);//indexOf(String str)方法返回包含str字串的第一次出现的位置,//如果返回值为负数,表示没有找到这样的匹配if (str.indexOf("23") < 0 && str.indexOf("32") < 0)System.out.println(str);}} else {for (int i = k; i < n; i++) {swap(array, k, i);List(array, n, k + 1);swap(array, i, k);}}}}三、写程序题(共计36分)。