1、期末复习题(一) 一 选择题 1. 下列java标识符,错误的是( D ) A. _sys_varl B. $change C. User_name D. 1_file 2. 下列不属于简单数据类型的是( B ) A. 整数类型 B. 类 C. 符点数类型 D. 布尔类型 3. 下列属于JAVA关键词的是( C ) A. TRUE B.goto C. float D. NULL 4.下列声明和赋值语句错误的是( C ) A. double w=3.1415; B. String strl=”bye
2、 C. float z=6.74567 D. boolean truth=true; 5. java中,八进制数以( B )开头。 A. 0x B. 0 C. 0X D. 08 6. 自定义类型转换是由按优先关系从低级数据转换为高级数据,优先次序为(A) A. char-int-long-float-double B. int-long-float-double-char B. long-float-int-double-char D. 以上都不对 7.在java中,Integer.MAX_VALUE表示( B ) A. 浮点类型最大值 B. 整数类型最大
3、值 C. 长整型最大值 D. 以上说法都不对 8.JAVA中,数据类型值中不可能出现的符号是( D ) A. d B. f C. e D. / 9. 下列表示单引号的是( B ) A. ‘ B. \\’ C. \\\\’ D. ‘\\ 10. 下列语句片断中,four得值为:( D ) int three=3; char one=‘1’ char four=(char)(three+one); A. 3 B. 1 C. 31 D. 4 11. 下列不属于整型变量的类型是( C ) A. byte B.short C.fl
4、oat D.long 12. int类型整型变量在内存中的位数为( C ) A. 8 B. 16 C. 32 D. 64 13. 下列数据类型转换,必须进行强制类型转换的是( D ) A.byte→int B.short→long C.float→double D. int→char 14. java中,用( A )关键字定义常量 A.final B.#define C.float D.const 15. 关于变量的作用范围,下列说法错误的是( A ) A.异常处理参数作用域为整个类 B.局部变量作用于声明该变量的方法代码段 C.类变量作用
5、于声明该变量的类 D.方法参数作用于传递到方法内代码段 16. 下列属于条件运算符的是( B ) A. + B. ?: C. && D. >> 17. 下列程序test类中的变量c的最后结果为( D ) public class test{ public static void main(String args[]) { int a=10; int b; int c; if(a>50){ b=9; } c=b+a; } } A. 10 B. 0 C.
6、19 D. 编译出错 18. 下列程序片断的执行,说法正确的是( C ) public class test{ public static void main(String args[]){ byte b=100; int i=b; int a=2000; b=a; System.out.println(b); } } A. b的值为100 B. b的值为2000 C. 第六行出错 D. 第八行出错 19. 00101010(&)00010111语句的执行结果为( A ) 00000
7、010 11111111 00111111 11000000 20. 已知i为整形变量,关于一元运算++i和i++,下列说法正确的是( D ) A. ++i运算将出错 B. 在任何情况下运行程序结果都一样 C. 在任何情况下运行程序结果都不一样 D. 在任何情况下变量i的值都增1 21. 在java中语句:37.2%10的运算结果为( A ) A. 7.2 B. 7 C. 3 D. 0.2 22. 在java语句中,运算符&&实现( B ) A. 逻辑或 B. 逻辑与 C. 逻辑非 D. 逻辑相等 23. 在java语句中,
8、位运算操作数只能为整型或( B )数据 A. 实型 B. 字符型 C. 布尔型 D. 字符串型 24. 00101010(|)00010111语句的执行结果为( C ) A. 00000000 B. 11111111 C. 00111111 D. 11000000 25. ~0010101语句的执行结果为( A ) A. 1101010 B. 0010101 C. 11111111 D. 00000000 26. 复合语句用( B )括起来的一段代码。 A. 小括号() B. 大括号{} C. 中括号〔〕 D. 单引号‘’
9、27. 下列不属于条件语句关键字的是( D ) A. if B. else C. swich D. while 28. 多分支语句switch(表达式){}中,表达式不可以返回哪种类型的值( C ) A. 整型 B. 实型 C. 接口型 D. 字符型 29.下面不属于java条件分支语句结构的是( D ) A. if结构 B. if-else结构 C. if-else if结构 D. if-else else机构 30. 下列方法method()执行,返回值为( D ) int method(){
10、 int num=10; if (num>20) return num; num=30; } A. 10 B. 20 C. 30 D. 编译出错 31. 三元条件运算符ex1?ex2:ex3,相当于下面( A )语句。 A. if(ex1) ex2;else ex3; B. if(ex2) ex1;else ex3; C. if(ex1) ex3;else ex2; D. if(ex3) ex2;else
11、 ex1; 32. java用( A )来实现goto语句所特有的一些功能。 A. break B. default C. continue D. return 33. 一个循环一般应包括哪几部分内容( D ) A. 初始化部分 B. 循环体部分 C. 迭代部分和终止部分 D. 以上都是 34. 关于while和do-while循环,下列说法正确的是( D ) A. 两种循环除了格式不通外,功能完全相同 B. 与do-while语句不通的是,while语句的循环至少执行一次 C. do-while语句首先计算终止条件,当条件满足时,才
12、去执行循环体中的语句 D. 以上都不对。 35. 下列程序输出结果为( C ): public class test { public static void main(String args[]) { int a=0; outer: for(int i=0;i<2;i++){ for(int j=0;j<2;j++){ if(j>i){
13、 continue outer; } a++; } } System.out.println(a); } } A. 0 B. 2 C. 3 D. 4 36.下列数组定义及赋值,错误的是(
14、B ) A. int intArray[]; B. intArray=new int[3]; intArray[1]=1; intArray[2]=2; intArray[3]=3; C. int a[]={1,2,3,4,5}; D. int[][]=new int[2][]; a[0]=new int[3]; a[1]=new int[3]; 37. 在java中,字符串由java.lang.String和( B )定义 A. java.lang.StringChar B. java.lang.StringBuffer
15、 C. java.io.StringChar D. java.io.StringBuffer 38. java程序的执行过程中用到一套JDK工具,其中javac.exe指( A ) A. java语言编译器 B. java字节码解释器 C. java文档生成器 D. java类分解器 39. java的API结构中,不属于类库主要包括的核心包的是( C ) A. java包 B. javax C. javadoc包 D. org扩展包 40.
16、每个java的编译单元可包含多个类或界面,但是每个编译单元最多只能有( A )类或者界面是公共的 A. 一个 B. 两个 C. 四个 D. 任意多个 41. 在当前的java实现中,每个编译单元就是一个以( A )为后缀的文件 A. java B. class C. doc D. exe 42.在Java编程中,Java编译器会将Java源程序转换为( A )。 A.字节码 B.可执行代码 C. 机器代码 D. 以上所有选项都不正确 43.关于Applet和Applica
17、tion,下列说法错误的是( B ) A.Applet自身不能运行 B.Applet可以嵌在Application中运行 C.Application以main()方法为入口 D.Applet可嵌在浏览器中运行 44.整型数据类型中,需要内存空间最少的是( D )。 A.short B.long C. int D. byte 45.下面的代码段,输出结果是( B )。 int x=015; System.out.println(x); A. 015 B.13 C.15 D
18、.编译错误 46.若有以下程序段: int a=1,b=2,c; c=1/b*a; 执行后,c的值是( A )。 A. 0 B. 0.5 C. 1 D. 2 47.下列关于数组的定义中,不正确的是( C ) A.int[] a=new int[5]; B.int a[]={1,2,3,4}; C.int a[][]= new int[][9]; D.int a[][]={{1}{1,2}{1,2,3}}; 48.已知x=5;y=7;经过表达式(x++>5)&&(++y>0)的运算,
19、x和y的值分别是( D ) A.5和7 B. 5和8 C. 6和7 D. 6和8 49.下面描述正确的是: ( A ) A.声明变量时必须指定一个类型 B.java认为变量number和Number相同 C.java中唯一的注释方式是“//” D.源文件中public类可以有0个或多个 50.下面有关抽象类定义合法的是( D )。 A.class Animal{ abstract void growl();} B.abstract Animal{abstract
20、void growl();} C.class abstract Animal{abstract void growl();} D.abstract class Animal{abstract void growl();} 51.根据下面的代码 if (x>0) { System.out.println("第一"); } else if (x>-3) { System.out.println("第二"); } else { System.out.println("第三"); } 判断x的取值在什么范围内时将打印字符串“第二”?( D ) A. x > 0
21、B. x > -3 C. x <= -3 D.x <= 0 & x > -3 52.要使某个类能被同一个包中的其他类访问,但不能被这个包以外的类访问,则( A )。 A.该类不使用任何关键字 B.使用private关键字 C.使用final关键字 D.使用protected关键字 53.以下关于接口不正确的说法是 ( D ) 。 A.一个类可以实现多个接口类似于多重继承 B.接口没有构造函数和析构函数 C.接口可以继承 D.接口包含的方法既可以有实现,也可以没有实现 54.对于可以独立运行的Java应用程序,下列( D )说法是正确的。 A
22、.无须main方法 B.必须有两个main方法 C.可以有多个或零个main方法 D.必须有一个main方法 55.以下关于继承的叙述正确的是( A )。 A.在Java中类只允许单一继承 B.在Java中一个类只能实现一个接口 C.在Java中一个类不能同时继承一个类和实现一个接口 D.在Java中接口只允许单一继承 56.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行( A )。 A.init() B.start() C.destroy() D.stop() 57.Jav
23、a源文件和编译后的文件扩展名分别为( B )。 A..class 和 .java B..java和 .class C..class 和 .class D..java 和 .java 58.Java语言不是( C )。 A.高级语言 B.编译型语言 C.结构化设计语言 D.面向对象设计语言 59.Java语言中创建一个对象使用的关键字为 ( C ) A.class B.interface C.new D.create 60.设有对象x具有属性a则访问该属性的方法为( C ) A.a.x B.a.x() C.x.
24、a D.x.a() 61.Java中,用package语句说明一个包时,该包的层次结构必须是( B ) A.与文件的结构相同 B.与文件目录的层次相同 C.与文件类型相同 D.与文件大小相同 二、填空题 1. 1991年,SUN公司的Jame Gosling和Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个_Oak__软件,它是java的前身。 2. java是一个网络编程语言,简单易学,利用了_ 面向对象__的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。 3. java可以跨
25、平台的原因是__ java虚拟机__ 4. JAVA的产品主流操作系统平台是Solaris、___ Windows __和Macintosh. 5. JAVA系统运行时,通过___垃圾回收___机制周期性的释放无用对象所使用的内存,完成对象的清除。 6. 在JAVA语言中,将后缀名为__ java ____的源代码文件编译后形成后缀名为.class的字节码文件。 7. JAVA语言的执行模式是半编译和___半解释型___。 8. JAVA类库具有___跨平台__的特点,保证了软件的可移植性。 9. 在JAVA语言中,为将源代码翻译成___字节码___文件时产生的错误称为
26、编译错误。而将程序在运行中产生的错误称为运行错误。 10. Java Application应用程序的编写和执行分3步进行:编写源代码、编译源代码、___解释执行__。 11. 每个java应用程序可以包括许多方法,但必须有且只能有一个__ main ___方法。 12. JAVA源文件中最多只能有一个__ public或公共___类,其它类的个数不限。 13. JAVA的体系结构中,最下层是移植接口,上面一层是虚拟机,虚拟机的上层是__ java基本类___和基本API,它们都是具有可扩展性。 14. JAVA解释器采用生成与体系结构无关的____字节代码__指令的技术,
27、只需安装JAVA运行系统,就可保证JAVA程序可以在网络的任何地方运行。 15. 把对象实例化可以生成多个对象,使用___ new ___运算符为对象分配内存空间。 16. java程序引入接口的概念,是为了弥补只允许类的___单继承_____的缺憾。 17. java语言以____类___为程序的基本单位,它是具有某些共同特性实体的集合,是一种抽象的概念。 18. 抽象方法只能存在于抽象类中。抽象方法用关键字____ abstract ____来修饰。 19. java语言中____ Object ___是所有类的根. 20. 在java中有一种叫做___
28、构造方法____的特殊方法,在程序中用它来对类成员进行初始化. 21. new是___创建___对象的操作符. 22. 继承主要强调子类在父类的基础上取”长”补”短”,而___多态性___主要强调的是类与类之间的传输 23. 我们在java程序中,把关键字____ supper ____加到方法名称的前面,来实现子类调用父类的方法 24. 定义一个类包括定义类头和定义____类体__两个部分 25. 在java程序里,同一类中重载的多个方法具有相同的方法名和__不同的___的参数列表.重载的方法可以有不同的返回值类型 26. java是面向对象语言,对象是客观事物的__
29、实体___,对象与之是一一对应的,它是很具体的概念. 27. java语言通过接口支持__多重____继承,使类继承具有更灵活的扩展性 28. 一个对象的生命周期包含三个阶段:生成, ___使用___ 和清除 29. java语言中,调用方法时,参数传递是___值___调用,而不是地址调用 30. 接口是一种只含有抽象方法或___常量___的一种特殊抽象类 31. 创建一个类就是创建一个新的数据类型,而类在java中属于___ 复合___数据类型。 32. abstract方法____不能____(不能或能)与final并列修饰同一个类 33. 如果一个类中定义了几个名为me
30、thod的方法,这些方法的参数都是整数,则这些方法的____参数个数____必须是不同的,这种现象称为方法的重载。 34.Java中用___extends______关键字指明继承关系,用___implement __关键字指明对接口的实现。 35.在Java语言中,有一个类是所有类和接口的父类,这个类的名称是__Object___。 36.在Java程序中,类只能实现__单__ 继承,但通过接口的定义可以实现_多重__ 继承。 37. __构造方法___是类中的一种特殊方法,用来实例化对象的初始状态。 38.某Java源程序中有一个类的定义为:public class MyPrg,
31、则该源程序的完整文件名应该为: MyPrg.java 。 39.面向对象的模型中,最基本的概念是__类___和__对象___。 40.有一种方法,仅有方法头,没有具体方法体和操作实现的方法,该方法必须定义在抽象类中,该方法称为 抽象方法 。 三.程序阅读题 (1) import java.io.*; class Parent{ void printMe(){ System.out.println("parent"); } } class Child extends Parent{ void printMe(){
32、System.out.println("child"); } void printAll(){ super.printMe(); this.printMe(); printMe(); } } public class Class1{ public static void main(String args[]){ Child myC=new Child(); myC.printAll(); } } 运行结果为: parent child child (2) public class Class2{ public s
33、tatic void main(String[] args){ A a1=new A(); a1.printa(); B b1=new B(); b1.printb(); b1.printa(); } } class A{ int x=1; void printa() {System.out.println(x);} } class B extends A{ int x=100; void printb(){ super.x=super.x + 10; System.out.println("super.x=" + super.x + "
34、x= " + x); } } 运行结果为: 1 super.x=11 x= 100 11 (3) interface A{ int x=1; void showX(); } interface B{ int y=2; void showY(); } class InterfaceTest implements A,B{ int z=3; public void showX(){System.out.println("x=" + x); } public void showY(){ System.out.println("y=
35、" + y); } public void showMe(){ System.out.println("z=" + (z+x+y)); } } public class Class3{ public static void main(String args[]){ InterfaceTest myObject=new InterfaceTest(); myObject.showX(); myObject.showY(); myObject.showMe(); } } 运行结果为: x=1 y=2 z=6 (4) pu
36、blic class Class4{ static String s; public static void main(String[] args){ System.out.println(“s= ”+s); } } 运行结果为: s=null (5) public static void main(String[] args){ int j=10; int i=1; do{ if(i++>--j) continue; }while(i<5) } 运行结果为: i=5 j=6 (6) impo
37、rt java.io.* ; public class Class6{ public static void main(String args[ ]){ int i, s = 0 ; int a[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 }; for ( i = 0 ; i < a.length ; i ++ ) if ( a[i]%3 = = 0 ) s += a[i] ; System.out
38、println("s="+s); } } 运行结果为: s = 180 (7) class Class7 { public static void main(String[] args){ char myChar='c'; switch(myChar){ default: case 'a':System.out.println("a");break; case 'b':System.out.println("b");break; } } } 运行结果为:a (8) c
39、lass Class8 int var; Tester(double var) { this.var = (int)var; } Tester(int var) { this("hello"); } Tester(String s) { this(); System.out.print (s); } Tester() { System.out.print("goodbye"); } public static void main(String[] args) {
40、 Tester t = new Tester(5); } } 运行结果为:goodbye hello (9) public class Person { String name; int age; public Person(String name, int age) { this.name = name; this.age = age; } public static void main(String[] args) { Person c = new Person("Peter", 17); System.out.pri
41、ntln(c.name + " is " + c.age + " years old!");
}
}
运行结果为:Peter is 17 years old!
(10)
public class Class10 {
public static void main(String args[]) {
int x = 10, y = 0;
for(int i=2;i 42、print(1);break;
case 2: System.out.print(2);
case 3: System.out.print(3);break;
default: System.out.print(4);
}
}
}
运行结果为:23
(11)
class Person{
public Person(){
System.out.println("Hi!");
}
public Person(String s){
this();
System. 43、out.println("I am "+s);
}
}
public class Class11 extends Person{
public Class11(){
this("I am Tony");
}
public Class11(String s){
super(s);
System.out.println("How do you do?");
}
public static void main(String args[]){
Class11 w = new Cla 44、ss11("Tom");
}
}
运行结果为:
hi
I am Tony
How do you do?
(12)
public class Class12{
String str=new String("Hello");
char ch[]={'J','a','v', 'a'};
public static void main(String args[]){
Class12 ex=new Class12();
ex.change(ex.str,ex.ch);
System.out.println(ex.str);
System.out.println(new String(ex.ch));
}
public void change(String str,char ch[]){
str="World";
ch[0]= 'Y';
}
}
运行结果为:
Hello
Yava
13
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818