1、填空题1. Java 是从( B )语言改进重新设计。A. Ada B. C+ C. Pasaca D. BASIC2. 执行语句 int i = 1, j = +i; 后 i 与 j 的值分别为( D ) 。 A. 1 与 1 B. 2 与 1 C. 1 与 2 D. 2 与 2 3. 每 Java 语言具有许多优点和特点, ( B )反映了 Java 程序并行机制的特点。A. 安全性 B. 多线性 C. 跨平台 D. 可移植4. 下列关于构造方法的叙述中,错误的是( C ) AJava 语言规定构造方法名与类名必须相同 BJava 语言规定构造方法没有返回值,但不用 void 声明 CJa
2、va 语言规定构造方法不可以重载 DJava 语言规定构造方法只能通过 new 自动调用 5. 下列哪个类的声明是正确的?( D ) Aabstract final class HI (final 代表常量,但是抽象类不能实例化)Babstract private move() (这是定义方法的) Cprotected private number; (不是定义类,且修饰符重复)Dpublic abstract class Car6. Java application 中的主类需包含 main 方法,main 方法的返回类型是( D ) 。 A. int B. float C. double
3、D. void7. 在调用方法时,若要使方法改变实参的值,可以(B) 。 A. 用基本数据类型作为参数 B. 用对象作为参数 C. A 和 B 都对 D. A 和 B 都不对8. 下列关于 for 循环和 while 循环的说法中( B )是正确的。A. while 循环能实现的操作,for 循环也都能实现 B. while 循环判断条件一般是程序结果,for 循环判断条件一般是非程序结果C. 两种循环任何时候都可替换 D. 两种循环结构中都必须有循环体,循环体不能为空9. Java 的字符类型采用的是 Unicode 编码方案,每个 Unicode 码占用( C )个比特位。 A. 8 B.
4、 16 C. 32 D. 6410. Java 中( C ) 。 A. 一个子类可以有多个父类,一个父类也可以有多个子类 (只可以单继承)B.一个子类可以有多个父类,但一个父类只可以有一个子类 C. 一个子类可以有一个父类,但一个父类可以有多个子类 D.上述说法都不对11. 在 Java 中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( C ) 。 A. 隐藏 B. 覆盖 C. 重载 D. Java 不支持此特性12. Java 类可以作为(C ) A. 类型定义机制 B. 数据封装机制 C. 类型定义机制和数据
5、封装机制 D. 上述都不对13.在创建对象时必须(C) A. 先声明对象,然后才能使用对象 B. 先声明对象,为对象分配内存空间,然后才能使用对象 C. 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象 D. 上述说法都对 14. 在创建对象时必须( C ) 。A. 先声明对象,然后才能使用对B. 先声明对象,为对象分配内存空间,然后才能使用对象C. 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象 D. 以上说法都正确15. 下列说法中,正确的是:( A ) A. 类是变量和方法的集合体 B. 数组是无序数据的集合 C. 抽象类可以实例化 D. 类成员数据必须是公
6、有的 16. 下列不可作为 java 语言标识符的是(D ) A. a1 B. $1 C. _1 D. 11(不能以数字开头)17.有一段 java 应用程序,它的主类名是 a1,那么保存它的源文件名可以是(A ) A. a1.java B. a1.class C. a1 D.都对 18 下列说法中, ( A )是正确的。 A. 类是变量和方法的集合体 B. 数组是无序数据的集合C. 抽象类可以实例化 D. 类成员数据必须是公有的19. 下列有关继承的说法中正确的是( B ) 。A. 子类能继承父类的所有方法和属性 B. 子类能继承父类的非私有方法和属性C子类只能继承父类 public 方法和
7、属性D覆盖与重载是同一回事子类能继承父类的方法,而不是属性20 java.lang 包的( B )方法比较两个对象是否相等,相等返回 true。A. toString() B. equals() C. compare() D. 以上所有选项都不正确21.一个 Java 程序运行从上到下的环境次序是(C) A. 操作系统、Java 程序、JRE/JVM、硬件 B. JRE/JVM、Java 程序、硬件、操作系统 C. Java 程序、JRE/JVM、操作系统、硬件 D. Java 程序、操作系统、 JRE/JVM、硬件 22. 下面选项中哪个关键字可以用来修饰接口中的变量和方法?(A) A. s
8、tatic B. private C. synchronized D. protected 23.关于被私有保护访问控制符 protected 修饰的成员变量,以下说法正确的是? (A) A可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类 B. 可以被两种类访问和引用:该类本身、该类的所有子类 C. 只能被该类自身所访问和修改 D只能被同一个包中的类访问 24.下列有关继承的说法。正确的是:(B) A. 子类能继承父类的所有方法和属性;B. 子类能继承父类的非私有方法和属性 C. 子类只能继承父类 public 方法和属性 D. 子类能继承父类的方法,而不是属性。
9、 25.为了区分类中重载的同名的不同的方法,要求:(A) A. 采用不同的形式参数列表 B. 返回值得数据类型不同 (与返回值无关)C. 调用时用类名或者对象名做前缀 D. 参数名不同 (参数列表-参数个数,参数类型)26.下面是有关子类继承父类构造函数的描述,其中正确的是:(C) A. 创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数。 (先调用父类的构造函数)B. 子类可以不调用父类的构造函数(子类的构造函数默能调用父类的无参数的构造函数)C. 子类必须通过 super()关键字调用父类的构造函数 D. 子类无法继承父类的构造函数。 (同上)27. 下列说法中,正确的是:
10、(A) A. 类是变量和方法的集合体 B. 数组是无序数据的集合 (类型(type)可以为 Java 中任意的数据类型,包括简单类型组合类型)C. 抽象类可以实例化 D. 类成员数据必须是公有的 28. 在使用 interface 声明一个接口时,只可以使用( D )修饰符修饰该接口。 A. private B. protected Cprivate protecte Dpublic29. 下面选项中关键字( A )可以用来修饰接口中的变量和方法。 A. static B. private C. synchronized D. protected 30. java 中用来抛出异常的关键字是(
11、C )。A. try B. catch C. throw D. finally31. 以下关于 java 异常说法正确的是( D )。A. 异常是一种对象 B. 一旦程序运行,异常将被创建C. 为了保证程序运行速度,要尽量避免异常控制 D. 以上说法都不对32java.lang 包的(B)方法比较两个对象是否相等,相等返回 true。AtoString() Bequals()Ccompare ()D以上所有选项都不正确33所有异常的父类是(B) 。AError B Throwable CRuntimeException DException 34下列(D)操作不会抛出异常。A除数为零 B用负数
12、索引访问数组 C打开不存在的文件 D以上都会抛出异常35能单独和 finally 语句一起使用的块是(A) 。Atry Bthrows Cthrow Dcatch36Java 是从(B )语言改进重新设计。AAda BC+ CPasacal D BASIC37下列语句哪一个正确(B)A Java 程序经编译后会产生 machine code B Java 程序经编译后会产生 byte codeC Java 程序经编译后会产生 DLL D以上都不正确38下 列运算符合法的是(A )Ac=0;do-c;a=a-1;while(a0);后,C 的值是(C)A0 B1 C -1 D死循环40下列哪一种
13、叙述是正确的(D )A abstract 修饰符可修饰字段、方法和类B抽象方法的 body 部分必须用一对大括号 包住C声明抽象方法,大括号可有可无D声明抽象方法不可写出大括号41下列语句正确的是(A)A形式参数可被视为 local variableB形式 参数可被字段修饰符修饰C形式参数为方法被调用时,真正被传递的参数D形式参数不可以是对象42下列哪种说法是正确的(D )A实例方法可直接调用超类的实例方法B实例方法可直接调用超类的类方法 C实例方法可直接调用其他类的实例方法D实例方法可直接调用本类的 类方法43下列标识符合法的有 (B)Anew B$Usdollars C1234 Dcar.
14、taxi44下列说法正确的有(A)A数组是一种对象B数组属于一种原生类C int number=31,23,33,43,35,63D数组的大 小可以任意改变45用来修饰 interface 的有(B)Aprivate Bpublic Cprotected D static46下列说法正确的是(A)A能被 java.exe 成功运行的 java class 文件必须有 main()方法B J2SDK 就是 Java APIC Appletviewer.exe 可利用 jar 选项运行.jar 文件D能被 Appletviewer 成功运行的 java class 文件必须有 main()方法47
15、.请问 “abcd” instanceof Object 返回的值是? (B) A. “abcd” B. true C. false D. String 48.下面说法正确的是:(A) A. 如果源代码中有 package 语句,则该语句必须放在代码的第一行(不考虑注释和空格) ;18 如果源代码中有 import 语句,则该语句必须放在在代码的第一行(不考虑注释和空格)/先写包,再导入C. 如果源代码中有 main()方法,则该方法必须被放在代码的第一行 /先写包D. 如果某文件的源代码中定义了一个 public 的接口,接口名和文件名可以不同。 49 下面有关方法覆盖说法不正确的是:(B)
16、 A. 方法覆盖要求覆盖和被覆盖的方法有相同的名字,参数列以及返回值 B. 方法覆盖要求覆盖和被覆盖的方法必须具有相同的访问权限; C. 覆盖的方法不能比被覆盖的方法抛出更多的异常 D. 覆盖的方法一定不能是 private 的 50. 下列哪种异常是检查型异常,需要在编写程序时声明 ( C ) 。A. NullPointerException B. ClassCastException C. FileNotFoundException D. IndexOutOfBoundsException51. 下述概念中不属于面向对象方法的是( D )。A. 对象、消息 B. 继承、多态 C. 类、封装
17、 D. 过程调用52. 下面不是 Java 的保留字或关键字的是( B ) 。A. efault B. NULL C. throws D. long53. 下面的赋值语句正确的是( D ) 。A. short myshort=99s; B. String name=Excellent ;C. char c=17c; D. int z=015;54. 执行完以下代码 int x = new int10;后,以下哪项说明是正确的( A ) 。A. x9为 0 B. x9未定义 C. x10为 0 D. x0为空55. 以下代码段执行后的输出结果为( C ) 。int x=-3; float y=1
18、0.0f;System.out.println(y%x);A. 不能成功编译 B. -1.0 C. 1.0 D. -156. 类与对象的关系是( A )。 A. 类是对象的抽象 B. 类是对象的具体实例C. 对象是类的抽象 D. 对象是类的子类57. 下列关于构造方法的叙述中,错误的是( C )A. Java 语言规定构造方法名与类名必须相同B. Java 语言规定构造方法没有返回值,但不用 void 声明C. Java 语言规定构造方法不可以重载 D. Java 语言规定构造方法只能通过 new 自动调用58. 关于 super 的说法正确的是 ( C )。A. 是指当前对象的内存地址 B.
19、 是指当前对象的父类对象的内存地址C. 是指当前对象的父类 D. 可以用在 main()方法中59. 关于被私有访问控制符 private 修饰的成员变量,以下说法正确的是( C )A. 可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B. 可以被两种类访问和引用:该类本身、该类的所有子类C. 只能被该类自身所访问和修改D. 只能被同一个包中的类访问60若在某一个类定义中定义有如下的方法: final void aFinalFunction( );则该方法属于( C ) 。A. 本地方法 B. 静态方法 C. 最终方法 D. 抽象方法61下列关于修饰符混用的说法,
20、错误的是( D ) A. abstract 不能与 final 并列修饰同一个类B. abstract 类中不可以有 private 的成员C. abstract 方法必须在 abstract 类中D. static 方法中能处理非 static 的属性62编译并运行下述程序段的结果是 ( B )。public class Testpublic static void main(String argv)int count = new int4;System.out.println(count4);A. 编译时错误 B. 运行时错误 C. 输出 0 D. 输出 null63在编写 Java Ap
21、plet 程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( D )语句。A. import java.awt.* ; B. import java.applet.* ; C. import java.io.* ; D. import java.awt.event.* ;64内部类是在一个类内嵌套定义的类,其特点描述错误的是( C )。A. 只能在定义它的类或程序段中或表达式内匿名使用,外部使用时必须给出类的全名B. 可以使用它所在类的静态成员变量或实例成员变量,但不可以使用所在类中的局部变量C. 可以使用其他类的成员,而且可访问它所在类的成员D. 除 static 内部类之
22、外,不能在类内声明 static 成员65关于以下程序段,正确的说法是( C )。String s1=“a”+“b”;String s2=new String(s1) ;if(s1=s2)System.out.println(“= = is succeeded”);if (s1.equals(s2)System.out.println(“.equals() is succeeded”);A. 行 4 与行 6 都将执行 B. 行 4 执行,行 6 不执行 C. 行 6 执行,行 4 不执行 D. 行 4、行 6 都不执行填空题:1. 在 Java 语言中,简单数据类型包括:整数类型、浮点类型
23、、字符类型 和布尔类型。2. 一般 Java 程序的类体由两部分组成:一部分是属性 ,另一部分是 方法 。3. this 指当前对象 ,super 指父对象 。4. 在 Java 中,能实现多重继承效果的方式是 实现多个接口 。5. 类_ _是 Java 程序中基本的结构单位。6. Java 是面向对象语言,类是客观事物的 抽象 ,而对象是类的 实例 。7 布尔型常量有两个值,它们分别 true_ _,_ false _。8. Java 中类成员的限定词有以下几种:private , public, protected 和 缺省。其中,_public 的限定的范围最大。 _ private _
24、的限定只能内部访问。Java 中成员变量用 final 修饰符修饰的是常量。9. 用 static 修饰的变量叫静态变量,它可以通过 类的对象 和 类名 两种方式来访问。程序阅读题1. 阅读以下程序,请写出输出结果import java.lang.*;public class StrComparepublic static void main(String args)String str1 = “Hello, Java!“,String str2 = “hello, java!“;System.out.println(str1.equals(str2); System.out.println(
25、str1.equalsIgnoreCase(str2); 输出运行结果:False True 2. 阅读以下程序,请写出输出 c.x= 2 public class withstaticdata static int x; int y; public static void main(String args) withstaticdata a=new withstaticdata();a.x=1; System.out.println(a.x);withstaticdata b=new withstaticdata();b.x=2; System.out.println(b.x); Syste
26、m.out.println(a.x); withstaticdata c=new withstaticdata();System.out.println(“c.x=“+c.x); 3. 现有一个类定义如下,请回答问题:class EmployeeString name;int age;double wage;static int No=0;Employee(String a1,int a2,double a3) name=a1; age=a2; wage=a3;No+; 在使用该类时,已使用下面语句生成了该类的对象:Employee e1,e2;e1=new Employee(“王劲“,26,
27、6300);e2=new Employee(“张山“,30,3800);问题:(1)e2.name,e2.age,e2.wage 的值各是什么?(3 分)张山,30,3800(2)生成对象 e1、e2 后,e1.No 值为多少?(3 分)e1.No=2 4. 找出下面程序中存在的错误。public abstract class ClosedFigure protected abstract ClosedFigure();【答】编译错,构造方法不能被声明为抽象方法。 (6 分)5. 阅读程序,写成运行结果。 (6 分,每空 2 分)public class Sumpublic static vo
28、id main(String args)int j=10;System.out.println(“j is : “+j);calculate(j);System.out.println(“At last, j is : “+j); static void calculate (int j)for (int i = 0;i10;i+)j+;System.out.println(“j in calculate() is: “+j); 输出结果为:j is : j in calculate() is : At last j is : 6. 一个 Java Application 源程序文件名 Jav
29、aApplication.java,如果使用 Sun 公司的 Java 开发工具 JDK 编译该源程序文件并使用其虚拟机运算这个程序的字节码文件,应该顺序执行哪两个命令?javac JavaApplication.java(3 分)java JavaApplication(3 分)8. 阅读程序,其运行结果为 55 。 (6 分)public class WhileDemo public static void main(String args) int x = 1; int sum = 0; while (x = 10) sum += x; x+; System.out.println(su
30、m); 9. 阅读程序,写出程序错误。class Person private String name; private int age; public void tell() System.out.println(“姓名:“ + name + “,年龄:“ + age); public class EncDemo02 public static void main(String args) Person per = new Person(); per.name = “张三“; per.age = -30; per.tell(); 【答】编译错(2 分) ,不能对私有属性 name 和 age
31、 进行赋值。 (4 分)10. 阅读下面程序,按要求写成 java 语句标注(每空 1 分,6 分) 。 interface A public String AUTHOR = “李兴华“ ; / 定义全局常量 public void print() ; / 定义抽象方法 public String getInfo() ; / 定义抽象方法 interface B / 定义接口 B public void say() ; class X implements A,B / 子类同时实现两个接口 public void say() / 覆写 B 接口中的抽象方法 System.out.println
32、(“Hello World!“); public String getInfo() / 覆写 A 接口中的抽象方法 return “HELLO“; public void print() / 覆写 A 接口中的抽象方法 System.out.println(“作者:“ + AUTHOR); 简答题1. 什么是异常?什么是 Java 的异常处理机制?参考答案:异常是指程序运行过程中产生的错误,它出现在程序运行过程中。 (2 分)异常处理机制是为程序提供错误处理的能力。根据这个机制,对程序运行时可能遇到的异常情况,预先提供一些处理的方法。在程序执行代码的时候,一旦发生异常,程序会根据预定的处理方法对异常进行处理,处理完成后,程序进行运行。 (3 分)2. java 程序错误和异常的区别?答:错误是程序运行时遇到的硬件错误、操作系统错误、其他软件错误或操作错误。对于程序而言是致命的,错误将导致程序无法运行。 (2 分)异常指在硬件和操作系统正常时,