一、单项选择题:在每小题的备选答案中选出一个正确答案,并将正确答案的代码填在题干上的括号内。
(每小题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. int4. Java语言中的数组是一个变量,用于保存一组相同数据类型的元素。
以下数组声明错误的是(D)。
A. int[] ABC;B. double ABC[];C. String[] name;D. char ABC[10];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 protected14. 在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 Test{private int x;public Test(){x=34;}public void Test(double f){this.x=(int)f;}public Test(String s){}}A.0B.1C.2D.318. 编译运行下面的Java程序,产生的结果是(B)。
interface A{public int x=0;}class B{public int x=1;}class C extends B implements A{public void pX(){System.out.println(x);}public static void main (String args[ ]){new C().pX();}}A.运行期错误B.编译期错误C.程序运行,输出结果为1D.程序运行,输出结果为0二、判断题:判断下列各题是否正确,正确的划√,错误的划×。
(每小题 1分,共10 分)( F )1. Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。
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)");}else{System.out.println("ab");}}6. 分析如下所示的Java代码,编译运行后的输出结果是28 。
public static void main(String[] args) {int[] numbers={1,2,3,5,8,13};int i=0;do{if(numbers[i]%2!=0){i++;continue;}else{System.out.print(numbers[i]);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 int[]{2,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.DA TE, 100);System.out.print("100天后的日期是:");System.out.print(cal.get(Calendar.YEAR)+"-"+cal.get(Calendar.MONTH)+"-"+cal.get(Calendar.DA TE));}}2.public class MyThread extends Thread {public static void main(String []args){MyThread t1=new MyThread();MyThread t2=new MyThread();t1.start();t2.start();}。