Java程序设计期末试卷(附复习资料).docx
一、单项选择题:在每小题的备选答案中选出一个正确答案,并将正确答案的代码填在题干上的括号内。(每小题1 分,共 20分)1.在Java的以下的变量赋值语句中,无法通过编译的是(A)。A. char c1=”男”;B. double d1=1.2 C. char c2=女;D. int f1=128 2.下列选项中关于Java类的理解错误的是(A)。A. 因为类中的属性与方法是从共性中抽象出来的,所以类的属性不能被赋值,类的方法不能有具体实现B. 在Java类中使用class关键字定义类C. 定义类就定义了一个自己的数据类型D. 类是具有相同属性与共同行为的一组对象的集合 3.在Java中,想要存储如员工年龄的数据最好使用(D)数据类型。A. booleanB. StringC. charD. int 4.Java语言中的数组是一个变量,用于保存一组相同数据类型的元素。以下数组声明错误的是(D)。A. int ABC;B. double ABC;C. String name;D. char ABC10; 5.给定如下所示的Java代码,要使这段代码能够编译成功,横线处应该填入(D)。public count(int i,double d)return i*d*2.0;A. intB. voidC. charD. double11.Java在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。A. privateB. protectedC. publicD. private protected 14.在Java中,通过调用以下(C)方法,可以加载Sun的JDBC-ODBC桥。A. new Class().load("sun.jdbc.odbc.JdbcOdbcDriver");B. new Class().forName("sun.jdbc.odbc.JdbcOdbcDriver");C. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");D. Class.load("sun.jdbc.odbc.JdbcOdbcDriver"); 15.在Java中,类Test的代码如下所示,假设类Test的实例化对象名为t,则选项(C)中的语句不能正确调用Test类的方法。 class Test public void change(int m)System.out.println("one parameter");public int change(double m)System.out.println("parameter is:"+m);return 0;A. int b=t.change(15.2f);B. t.change(15.2f);C. int a=t.change(12);D. t.change(250.5); 16.Java中,在如下所示的Test类中,共有(C)个构造方法。 public class Testprivate int x;public Test()x=34;public void Test(double f)this.x=(int)f;public Test(String s) 18.编译运行下面的Java程序,产生的结果是(B)。 interface Apublic int x=0;class Bpublic int x=1;class C extends B implements Apublic void pX()System.out.println(x);public static void main (String args )new C().pX();A. 运行期错误B. 编译期错误C. 程序运行,输出结果为1D. 程序运行,输出结果为0 二、判断题:判断下列各题是否正确,正确的划,错误的划×。(每小题 1分,共10 分)1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。( F ) 2.对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。( F ) 3.有的类定义时可以不定义构造函数,所以构造函数不是必需的。( F ) 4.一个Java类可以有多个父类。(F ) 5.子类要调用父类的方法,必须使用super关键字。( F ) 6.最终类不能派生子类,最终方法不能被覆盖。( T ) 7.final类中的属性与方法都必须被final修饰符修饰。( F ) 8.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。( F ) 9.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点( F ) 10.类及其属性、方法可以同时有一个以上的修饰符来修饰。( T )三、填空题:(每空格2 分,共40 分)1.Tomcat服务器的默认端口是 8080 。 2.异常的处理,可以在该方法的代码段中包含3类代码: 、 与 finally代码块。 5.分析如下所示的Java代码,编译运行后的输出结果是 !(a && b) 。public static void main(String args) boolean a=true,b=false;if(!(a && b)System.out.println("!(a && b)");else if(!(a | b)System.out.println("!(a | b)");elseSystem.out.println("ab"); 6.分析如下所示的Java代码,编译运行后的输出结果是 28 。public static void main(String args) int numbers=1,2,3,5,8,13;int i=0;doif(numbersi%2!=0)i+;continue;elseSystem.out.print(numbersi);i+;while(i<numbers.length); 7.分析如下所示Java代码,编译运行后的输出结果是 兄弟 。 public static void main(String args) int param = 2; String position="" switch(param) case 1: position="兄长" break; case 2: position="兄弟" break; default: position="小妹" System.out.println(position); 8.分析下面的Java源程序,编译后的运行结果是 1 。import java.util.Arrays;public class Test public static void main(String args) int numbers=new int2,1,3;Arrays.sort(numbers);System.out.println(Arrays.binarySearch(numbers,2);9.分析下面的Java代码片段,编译运行后的输出结果是 13 。for(int i=0;i<6;i+)int k=+i;while(k<5)System.out.print(i);break; 12.在Java中,以下程序编译运行后的输出结果为 7 。public class Test int x,y;public Test(int x, int y) this.x = x;this.y = y;public static void main(String args) Test pt1,pt2;pt1=new Test(3,3);pt2=new Test(4,4);System.out.println(pt1.x+pt2.x); 15.分析以下Java代码程序,若要实现从键盘接收多个姓名字符串,直到输入“*”结束,则该段代码中下划线处应添加的代码是()。import java.util.*;public class Hello public static void main(String args) StringBuffer strName=new StringBuffer();System.out.println("请输入学生姓名:");Scanner sc=new Scanner(System.in);String input;while(!(input=sc.next().equals("*") strName.append(input); strName.append("n"); System.out.println("您输入的学生是:n"+strName); 18.在Java语言中有如下代码,在下划线处填入适当的代码,使该段代码输出100。 Int x=100 switch(x)case 100:System.out.println("100");break;case 110:System.out.println("110");break;四、程序设计:(每小题15 分,共30 分)1. import java.util.Calendar;public class Day public static void main(String args) Calendar cal=Calendar.getInstance();cal.add(Calendar.DATE, 100);System.out.print("100天后的日期是:");System.out.print(cal.get(Calendar.YEAR)+"-"+cal.get(Calendar.MONTH)+"-"+cal.get(Calendar.DATE);2. public class MyThread extends Thread public static void main(String args)MyThread t1=new MyThread();MyThread t2=new MyThread();t1.start();t2.start(); public void run() for(int i=0;i<=10;i+) / 26个字母:(char i=97;i<=123;i+) System.out.println(this.getName()+":"+i);