当前位置:文档之家› java期末考试复习题

java期末考试复习题

java期末考试复习题
java期末考试复习题

一.填空题:

1.Java语言的前身叫做Oak 。2.Java语言是由sun 公司的一个叫做Green 的开发小组开发出来的。

3.Java语言是面向对象的编程语言。

4.用Java语言编写的应用程序不用修改就可以在不同的软硬件平台上运行,这是Java语言的可移植性。

5.Java源程序编译之后生成Java的.class 文件。

6.Java语言的分布性包括数据分布和操作分布。

7.Java语言在语法方面与C语言存在一个最大的区别,就是Java语言不支持C语言中的指针类型,这也是保证Java语言安全性的一个重要方面。

8.Java语言的多线程特性可以使一个任务分成多个子任务并发执行,以提高系统的运行效率。

9.Java语言的多线程性和高效的字节码保证了Java程序的高性能。

10.Java语言程序分为两类:Java应用程序

和Java小程序。

11.Java程序在命名时,程序名必须和主类名称相同。

12.对Java程序编译时使用javac 命令,对应用程序解释执行用java 命令。

13.Java的小程序必须嵌入到html 文件中才能真正运行。

14.Java的字节码程序是由Java虚拟机解释执行的。

15.结构化程序设计具有很多优点,但它仍是一种面向_过程的程序设计方法。

16.java应用程序执行的入口是main 函数,java小程序执行的入口是

init 方法。

二.选择题:

1.在程序设计中,应该采用的原则是(A )。

A、程序结构有助于读者理解

B、不限制GOTO语句的使用

C、减少或取消注释行

D、程序越短越好

2.保证Java语言可移植性的特征是(D )。

A、面向对象

B、安全性

C、分布式计算

D、可跨平台

3.以下选项中不属于Java语言的特点的是

(B )A、面向对象B、平台相关性

C、分布式

D、多线程性

4.以下关于Java语言的叙述中,错误的是(D )

A、Java的解释器提供了数组下标越界的检查

B、Java语言是一种面向对象的编程语言

C、Java在编译和运行时,都要对可能出现的问题进行检查

D、Java支持C语言中的goto语句

5.Java语言与C++语言相比,最突出的特点是(B )

A、面向对象

B、跨平台

C、有类库

D、高性能6.运行java程序所需要的工具软件所在的目录是(A)

A、JDK的bin目录

B、JDK的demo目录

C、JDK的lib目录

D、JDK的jre目录

7.下列叙述中,错误的是D

A、Java Application与Applet所用编译命令相同

B、通常情况下Java Application只能有一个main()方法

C、Java Applet必须有HTML文件才能运行

D、Java Applet程序的.class文件可用java命令运行

8.在Java语言中,不允许使用指针体现出的Java特性是(D)

A、可移植

B、解释执行

C、健壮性

D、安全性

9.在Java中,负责对字节代码进行解释的是(B )。

A、垃圾回收器

B、虚拟机

C、编译器

D、多线程机制

10.以下叙述中,正确的是(A )。

A、Java语言的标识符是区分大小写的

B、源文件名与public类名可以不相同

C、源文件的扩展名是jar

D、源文件中public类个数不限

第二章一.填空题:

1.Java标识符必须以字母、下划线或者美元符号开始。

2.Java程序中的每一个完整的语句都要以;

结束。

3.Java采用Unicode 字符集。

4.Java中的八进制整常数以0 开始,而十六进制整常数以0x 开始。

5.浮点型常量默认为double 型。

6.在Java中,转义字符\n表示换行。7.阅读下列程序段

public class OperatorsAndExpressions{

String conditionalExpression(int score){

String result;

result=(score>=60)?”passed”:”doesn?t pass”;

System.out.println(result);

return result;

}

public static void main(String args[]){

OperatorsAndExpressions

OperAndExp=new OperatorsAndExpressions();

OperAndExp.conditionalExpression(65);

}

}

其执行结果是passed 。

8.在Java中,3.1412D表示的是双精度浮点数3.1412 。

9.阅读下列代码

public class Test2{

public static void main(String args[]){

System.out.println(5/2);}}

其执行结果是 2 。

10.在java中,移位运算符包括:>>、<<和>>> 。

11.Java语言的数据类型分为基本数据类型和_复合数据类型_。

12.0011|0100= 0111 ,0100^1100= 1000 。13.变量具有三大属性:名称、类型和作用域。

二.选择题:

1.以下关于Java标识符的叙述中,错误的

是:B

A、Java标识符的后续字符可以是字母,下划线,美元符号和数字

B、Java标识符是不区分大小写的

C、Java标识符没有最大长度的限制

D、Java的标识符不可以用Java关键字来定义2.以下哪个标识符为合法标识符:A

A、aVariable1

B、1var

C、var%

D、static 3.以下哪个标识符为非法的:C A、$var2 B、_var2 C、var2# D、var2$ 4.以下哪个不是Java中的整数类型:C

A、byte

B、int

C、Long

D、short 5.请阅读下面程序

import java.io.*;

public class TypeTransition{

public static void main(String args[]){

char a=?a?;

int i=100;

long y=456L;

int aa=a+i;

long yy=y-aa;

System.out.print(“aa=”+aa);

System.out.print(“yy=”+yy);

则程序的执行结果为:A

A、aa=197 yy=259

B、aa=177 yy=259

C、aa=543 yy=288

D、aa=197 yy=333

6.阅读下面程序

import java.io.*;

public class TypeTransition{

public static void main(String args[]){

char a=?h?;

int i=100;

int j=97;

int aa=a+i;

System.out.println(“aa=”+aa);

char bb=(char)j;

System.out.println(“bb=”+bb);

}

}

如果输出结果的第二行为bb=a,那么第一行的输出是:B

A、aa=1

B、aa=204

C、aa=v

D、aa=156

7.阅读下面程序

public class Increment{

public static void main(String args[]){

int c;

c=5;

System.out.println(c);

System.out.println(c++);

System.out.println(c);

}

}

程序的运行结果是:B

A、5

B、5

C、6

D、6

6 5 7

6

6 6 7

6

8.下列标识符(名字)命名原则中,正确的是:D

A、类名的首字母小写

B、变量和方法名的首字母大写

C、接口名的首字母小写

D、常量完全大写

10.阅读下列代码

public class Test2005{

public static void main(String args[]){

System.out.println(~(0xa5)&0xaa);

}

}

其运行结果是:B

A、0xa5

B、10

C、0x50

D、0xaa

11.阅读下列代码

public class Test2005{

public static void main(String args[]){

System.out.println((3>2)?4:5);

}

}

其运行结果为:C

A、2

B、3

C、4

D、5

12.阅读下列代码

public class Test{

public static void main(String args[]){

System.out.println(89>>1);

}

}

其运行结果为:A

A、44

B、45

C、88

D、89

13.下列叙述中,正确的是:A

A、声明变量时必须指定一个类型

B、Java认为变量number与Number相同

C、Java中唯一的注释方式是”//”

D、源文件中public类可以有0个或多个14.下列属于合法的Java标识符的是:D A、”ABC” B、&5678 C、+rriwo D、saler 15.下列代表十六进制整数的是:D

A、0123

B、1900

C、fa00

D、0xa2

16.++运算操作数的个数是:A

A、1个

B、2个

C、3个

D、4个

17.在switch(expression)语句中,expression 的数据类型不能是:A

A、double

B、char

C、byte

D、short

18.下列代码中,将引起编译错误的行是:B

1) public class Excecise{

2) public static void main(String args[]){

3) float f=0.0;

4) f+=1.0;

5) }

6) }

A、第2行

B、第3行

C、第4行

D、第6行

19.以下叙述错误的是(A )。

A、用户所定义的标识符允许使用关键字

B、用户定义的关键字应该尽量“见名知

意”

C、用户定义的标识符必须以字母、美元符

号或下划线开头

D、用户定义的标识符中,大小写字母代表

不同的标识

20.下列声明哪个是错误的(B)

A int i = 10;

B float f = 1.1;

C double d = 34.4;

D long m = 4990;

三.判断题:

1.Java中布尔型变量的取值为true和false,其中true又等同于任何非0的数,而false等同于0.

(错)

2.实型常量数值后面没有字母时,默认类型是float,而不是double。(错)

第三章一.填空题:

1.阅读下列程序段

int i=3,j;

outer:while(i>0){

j=3;

inner:while(j>0){

if(j<2) break outer;

System.out.println(j+”and”+i);

j--;

}

i--;

}

被输出到屏幕第一行的结果是3 and 3 。2.阅读下列代码段

int x=3;

while(x<9)

x+=2;

x++;

while语句成功执行的次数是3次。

3.已知a=3,b=9,则表达式a>b?a,b的值为

9 。

4.关系运算符的运算结果一定是布尔数据类型。

5.do-while 表示的循环体会至少执行一次。6.已知x=12,y=6,z=false,则下列表达式的值分别为(表达式之间没有执行的先后顺序):

100= =x+y false

x=y+10 16

z||y>x false

!(y*3<=x*4) false

7.跳转语句continue用于循环体时表示退出本次循环,跳转语句break用于循环体时表示退出整个循环。

二.选择题:

1.阅读下列程序

if(x= =0) {System.out.println(“冠军”);

else if(x>-3) {System.out.println(“亚军”);

else {System.out.println(“季军”);

若要求打印字符串“季军“,则变量x的取值范围是:D

A、x=0&x<=-3

B、x=0

C、x>-3

D、x<=-3

2.阅读下面程序

import javax.swing.JOptionPane;

public class BreakLabelTest{

public static void main(String args[]){

String output=””;

stop:{

for(int row=1;row<=10;row++){

for(int column=1;column<=5;column++){

if(row= =5)

break stop;

output+=”* “;

}

output+=”\n”;

}

output+=”\nLoops terminated normally”;

}

JOptionPane.showMessageDialog{

null,output,”用一个标志测试break语句”,

https://www.doczj.com/doc/4415349469.html,RMATION_MESSAGE); System.exit(0);

}

}

程序运行结果是:C

A、窗口中有5行* * * * *

B、窗口中有5行* * * *

C、窗口中有4行* * * * *

D、窗口中有6行* * * * *

3.下列语句中,属于多分支语句的是:B

A、if语句

B、switch语句

C、do while语句

D、for语句

4.阅读下列代码

public class Test2005{

public static void main(String args[]){

String s=”Test”;

switch(s){

case “Java”: System.out.print(“Java”); break;

case “Language”:

System.out.print(“Language”); break;

case “Test”: System.out.print(“Test”); break;

}

}

}

其运行结果是:D

A、Java

B、Language

C、Test

D、编译出错

5.下列代码中

if(x>0) {System.out.println(“first”);}

else if(x>-3){System.ou t.println(“second”);} else {System.out.println(“third”);}

要求打印字符串为“second”时,x的取值范围是:A

A、x<=0并且x>-3

B、x>0

C、x >-3

D、x<=3 6.下列哪个说法是正确的?B

A. if语句和else语句必须成对出现

B. if语句可以没有else语句对应

C. switch后的表达式可以是long型

D. 每个switch结构中必须有default结构

7.以下语句中有语法错误的是:B

A. for(; ;);

B. for(int i=0, i<10, i++){}

C. if(a<0) ++a;

D.do{a=false;} while(a=true);

8.while循环和do_while循环的区别是:D A、没有区别,这两种结构在任何情况下效果都是一样的

B、while循环的执行效率比do_while循环的执行效率高

C、while先循环后判断,所以循环体至少执行一次

D、do_while先循环后判断,所以循环体至少执行一次

9.关于for循环和while循环,下面哪个说法是正确的?B

A、while循环能实现的操作,for循环都能实现

B、while循环的判断条件一般是程序的结果,for循环的判断条件一般是非程序的结果

C、两种循环在任何时候都可以互换,所以会使

用一种就可以

D、两种循环结构中都必须有循环体,循环体不

能为空

10.下面说法正确的是:C

A、程序执行到break语句时一定会结束所有的

循环

B、程序执行到continue语句时会结束当前循环

C、break语句和continue语句都可以和标签协

同使用

D、break语句和continue语句的作用相同三.判断题:

1.switch语句中switch后面的表达式可以是整型,字符型,还可以是复合数据类型。

(错)

2.在每一个switch结构中必须有一个default分支。(错)

第四章一.填空题:

1.类是属性和方法的集合。

2.在面向对象方法中,类描述的是具有相似属性与操作的一组对象。

3.在面向对象的方法中,类的实例被称为_对象____。

4.面向对象的程序设计方法中涉及的对象是程序中用来描述客观事物的一个实体,它由__属性__和可执行的一组操作共同组成。

5.protected关键字修饰的属性或方法表示可被_类自身,同一个包中的其他类,不同包中的子类_访问。

6.抽象的类不能__生成对象__。7.构造方法是一种特殊的方法,用它来定义对象的_初始化状态__。

8.___最终___类是不能被继承的类。

9.面向对象的3个最主要的特点是继承性、多态性和封装性。

10.在创建类的对象时都会调用类的构造函数来初始化类中的属性。

11.消息传递的三要素是接收消息的对象、接收消息的方法和方法所需要的参数。12.访问控制符用来控制类和类的成员的访问权限。

二.选择题:

1.下列关于Java对import语句规定的叙述中,错误的是:(C )

A、在Java程序中import语句可以有多个

B、在Java中import语句可以没有

C、在Java中import语句必须有一个

D、在Java程序中import语句必须引入在所有类定义之前

2.下列关于构造函数的叙述中,错误的是:(C)

A、Java语言规定构造函数名与类名必须相同

B、Java语言规定构造函数没有返回值,但不用void声明

C、Java语言规定构造函数不可以重载

D、Java语言规定构造函数只能通过new自动调用

3.若数组a定义为int[][]a=new int[3][4],则a 是:B

A、一维数组

B、二维数组

C、三维数组

D、四维数组

4.已知:int []a=new int[100]; 在下列给出的数组元素中,非法的是:D

A、a[0]

B、a[1]

C、a[99]

D、a[100]

5.在Java中,用package语句说明一个包时,该包的层次结构必须是(B)。

A、与文件的结构相同

B、与文件目录的层次相同

C、与文件类型相同

D、与文件大小相同6.在下面的概念中,不属于面向对象的概念的是(C )。

A、类

B、继承

C、过程调用

D、对象

7.面向对象程序设计主要强调的是(B)。

A、程序的规模

B、程序的易读性

C、程序的执行效率

D、程序的可移植性

8.在面向对象的方法中,一个对象请求另一个对象为其服务的方式是发送(D )。

A、调用语句

B、命令

C、口令

D、消息

9.在面向对象的开发方法中,类与对象的关系是(B )。

A、具体与抽象

B、抽象与具体

C、整体与部分

D、部分与整体

10.保证Java语言可移植性的特征是(D )。

A、面向对象

B、安全性

C、分布式计算

D、可跨平台

11.面向对象的三大特性不包括(D)

A 封装

B 继承

C 多态

D 消息通信

12.程序的执行结果是(B)

public class Test {

int x;

public static void main(String [] args){

Test t = new Test();

t.x=5;

change(t);

System.out.println(t.x);

}

public static void change(Test t){

t.x=3;

}

}

A 5

B 3

C 编译出错

D 以上答案都不对6.关于构造函数说法错误的是(B)

A 构造函数名与类相同

B 构造函数无返回值,可以使用void 修饰

C 构造函数在创建对象时被调用

D 在一个类中如果没有明确的给出构造函数,编译器会自动提供一个构造函数

7.下列选项中,哪个不是Java 的访问控制符(C)

A private

B protected

C friendly D

public

8.关于抽象类的说法正确的是(B)

A 抽象类中一定包含抽象方法,否则是错误

B 包含抽象方法的类一定是抽象类

C 抽象方法可以没有方法体,也可以有方法体

D 抽象类的子类一定不是抽象类

9.关于接口的说法错误的是(D)

A 是特殊的抽象类

B 是抽象方法和常量值的定义的集合

C 当一个类实现一个接口时,必须实现接口中的所有方法

D 多个类可以实现一个接口,一个类只能实现一个接口

三.判断题:

1.类的封装性使得代码的可重用性得到提高。(对)

2.在没有创建类的对象的情况下,就可以通过类来直接访问类中的静态成员。

(对)

3.抽象类不能用来实例化对象,抽象类中可以提供部分方法的实现。(对)

第五章一.填空题:

1.Java不直接支持多继承,但可以通过接口实现多继承。

2.任何一个Java程序都默认引入了一个包,这个包的名字叫做java. lang 。

使用已经存在的类定义作为基础建立新的类定义,这样的技术叫做_类的继承__

3.用来实现接口的关键字是implements 。4. 对象替换原则是指父类的句柄可以指向子类的对象。

5.子类继承父类使用关键字extends

6.一个类中如果存在一个或多个抽象方法,那么这个类是一个抽象类。

7.抽象类中可以(“可以”或者“不可以”)不存在抽象的方法,可以(“可以”或者“不可以”)存在非抽象的方法。

8.接口中的属性的默认修饰符为public static final ,接口中方法的默认修饰符为public abstract 。

二.选择题:

1.用来引入已定义好的类或包的语句是:B A、main B、import C、public class D、class

2.下列叙述中,错误的是:D

A、父类不能替代子类

B、子类能够替代父类

C、子类继承父类

D、父类包含子类

3.程序执行的结果(C)

public class Test {

String name="Tom";

public Test(String name){

name=name;

}

public static void main(String [] args){

Test t = new Test("Jack");

System.out.println(https://www.doczj.com/doc/4415349469.html,);

}

}

A 编译有错

B Jack

C Tom

D 以上答案都不对4.在Java 中,关于static关键字的说法错误的是(D)A static 可以修饰方法 B static 可以修饰变量

C static 可以修饰代码块

D static 修饰的方法,在该方法内部可以访问非静态的类成员变量

5.关于Java 中继承的特点,下列说法正确的是(B)

A 使类的定义复杂化

B Java 只支持单继承,不可多继承,但可以通过实现

接口来达到多继承的目的

C 子类继承父类的所有成员变量和方法,包括父类的构

造方法

D 不可以多层继承,即一个类不可以继承另一个类的子类

6.程序的执行结果是(D)

public class Test {

public static void main(String [] args){

Child c = new Child();

}

}

class Father{

public Father(){

System.out.println("父类无参构造函数");

}

public Father(String name){

System.out.println("父类有参构造函数");

}

}

class Child extends Father{

public Child(){

this("dd");

System.out.println("子类无参构造函数");

}

public Child(String name){

super("dd");

System.out.println("子类有参构造函数");

}

}

A 子类无参构造函数子类有参构造函数父类无参构造函数

B 子类有参构造函数子类无参构造函数父类无参构造函数

C 父类无参构造函数子类有参构造函数子类无参构造函数

D 父类有参构造函数子类有参构造函数子类无参构造函数

三.判断题:

1.在进行类的继承时,一个子类只能有一个父类,一个父类也只能有一个子类。

(错)

2.实现接口时必须实现接口中的所有方法。(对)

3.一个类可以同时实现多个接口,但一个类只能继承一个父类。(对)

4.Object类是类的继承树上的根结点。

(对)

5.父类的句柄指向子类对象时,父类的句柄可以调用子类中所有的方法。(错)

四.写程序结果

1、程序1和程序2的执行结果分别是什么,该结果说明了什么

程序1:

class Father{

Father(){

System.out.println("Father's constructor");

}

Father(int i){

System.out.println("Father's constructor "+i);

}

}

class Son extends Father{

Son(){

System.out.println("Son's constructor");

}

Son(int i){

System.out.println("Son's constructor "+i);

}

}

class Test2{

public static void main(String args[]){

Son son1=new Son();

Son son2=new Son(5);

}

}

程序2:

class Father{

Father(){

System.out.println("Father's constructor ");

}

Father(int i){

System.out.println("Father's constructor "+i);

}

}

class Son extends Father{

Son(){

System.out.println("Son's constructor");

}

Son(int i){

super(3);

System.out.println("Son's constructor "+i);

}

}

class Test4{

public static void main(String args[]){

Son son1=new Son();

Son son2=new Son(5);

}

}

2.写出下面程序的运行结果:

public class AttributeInheritanceTest{

public static void main(String []args){

Son son=new Son();

System.out.println();

System.out.println("testValue of son is :"+son.testValue);

System.out.println("testValue of father is:"+son.getSuperTestValue());

son.minusOne();

System.out.println("testValue of son is :"+son.testValue);

System.out.println("testValue of father is:"+son.getSuperTestValue());

son.plusOne();

System.out.println("testValue of son is :"+son.testValue);

System.out.println("testValue of father is:"+son.getSuperTestValue());

}

}

class Father{

int testValue=100;

public void minusOne(){

testValue--;

}

}

class Son extends Father{

int testValue=0;

public void plusOne(){

testValue++;

}

public int getSuperTestValue(){

return super.testValue;

五、编程题

1.编写程序,要求创建一个抽象类Father,其中有身高、体重等属性及爱好(唱歌)等方法,创建子类Son类继承Father类,并增加性格这个属性,改写父类的方法(爱好)。

第六章一.填空题:

1.Java中的异常类对象是Error类或Exception 类的对象,这两个类中Error 类的对象不会被Java的应用程序捕获和抛出。

2.在下列程序的下划线处,填入适当语句使程序能正确执行并输出异常栈信息

public class ThrowableException{

public static void main(String args[]){

try{

throw new Throwa ble(“这是本人定义的异常”);

}catch(Throwable e){

System.out.println(“e.toString:”+e.toString());

System.out.println(“e.printStackTrace():”);

System.out.println(e.printStackTrace()) ;}}} 二.选择题:

1.下列关于finally的说法正确的是:B

A、如果程序在前面的catch语句中找到了匹配的异常类型,将不执行finally语句块

B、无论程序是否找到匹配的异常类型,都会去执行finally语句块中的内容

C、如果在前面的catch语句块中找到了多个匹配的异常类型,将不执行finally语句块

D、只要有catch语句块,任何时候都不会执行finally语句块

2.关于多个catch语句块的异常捕获顺序的说法正确的是:D

A、父类异常和子类异常同时捕获

B、先捕获父类异常

C、先捕获子类异常

D、依照catch语句块的顺序进行捕获,只能捕

获其中的一个

3.关于Java 异常,下列说法错误的是(D)

A 异常是定义了程序中遇到的非致命的错误,而不是编译时的语法错误

B try……catch语句中对try 内语句监测,如果发生异常,则把异常信息放入对象e 中

C throws 用来表示一个方法有可能抛出异常给上一

层,则在调用该方法时必须捕捉异常,否则无法编

译通过

D 主函数不可以使用throws 抛出异常

4.所有异常的父类是(B)。

A.Error B.Throwable C.RuntimeException D.Exception

5.下列(D)操作不会抛出异常。

A.除数为零 B.用负数索引访问数组

C.打开不存在的文件 D.以上都会抛出异常

6.能单独和finally语句一起使用的块是(A)。

A.try B.throws

C.throw D.catch

7.在多重catch块中同时使用下列类时,(A)异常类应该最后列出。

A.Exception B.ArrayIndexOutOfBoundsException C.NumberFormatException D.ArithmeticException

8.执行下面的代码会引发(C)异常。

String str=null;

String strTest=new String(str); A.InvalidArgumentException B.IllegalArgumentException C.NullPointerException D.ArithmeticException 9.这段代码的输出结果是(C)。

try{

System.out.print(“try,“);

return;

} catch(Exception e){

System.out.print(“catch,“);

} finally{

System.out.print(“finally”);

}

A.try,

B.try,catch,

C.try,finally

D.try,catch,finally

10.这个方法的返回值是(C)。

public int count() {

try{

return 5/0;

}catch(Exception e){

return 2*3;

}finally{

return 3;

}

}

A.0

B.6

C.3

D.程序错误

三、编程题

1.编写一个程序,产生ArrayIndexOutOfBoundsException 异常,并捕获该异常,在控制台输出异常信息。

2.设计一个Java程序,自定义异常类,从键盘输入一个字符串,如果该字符串值为“abc”,则抛出异常信息,如果从键盘输入的是其他字符串,则不抛出异常。

3.设计一个Java程序,从键盘输入两个数,进行减法运算。当输入串中含有非数字时,通过异常处理机制使程序正常运行。

4.自定义异常类,在进行减法运算时,当第一个数大于第二个数时,抛出“被减数不能小于减数”,并编写程序进行测试。

第七章一.填空题:

1.在Java中有一个类是所有类或接口的父类,这个类的名称是Object 。

2.在Java中,字符串是作为类出现的。3.Collection接口中的contains方法判断集合中是否包含指定的元素,remove方法移除collection中的所有元素。

4字符串的常用方法有charAt、equals、compareTo、indexOf。

二.选择题:

1.java的核心包中,提供编程应用的基本类的包是:A

A、https://www.doczj.com/doc/4415349469.html,ng

B、java.util

C、java.applet

D、java.rmi

2.阅读下面程序

public class OperatorsAndExpressions{

void equalsMethod(){

String s1=new String(“how are you”);

String s2=new String(“how are you”);

System.out.println(s1= =s2);

}

public static void main(String args[]){

OperatorsAndExpressions OperAndExp=new OperatorsAndExpressions();

OperAndExp.equalMethod1();

}

}

程序运行结果是:C

A、= =

B、true

C、false

D、equal

3.阅读下面程序

import javax.swing.JOptionPane;

public class Comparison{

public static void main(String args[]){

String firstNumber, secondNumber, result;

int number1, number2;

firstNumber=JOp tionPane.showInputDialog(“请输入第1个数:”);

secondNumber=JOptionPane.showInputDialo g(“请输入第2个数:”);

number1=Integer.parseInt(firstNumber);

number2=Integer.parseInt(secondNumber);

;

if (number1= =number2)

result+=number1+”= =”+number2;

else

result+=number1+”!=”+number2;

JOptionPane.showMessageDialog(null,result,”比较结果”,

https://www.doczj.com/doc/4415349469.html,RMATION_MESSAGE);

为使程序能够正确运行并得到合理的输出结果,初始化结果变量语句(下划线处)应是:A A、result=”” B、result=null C、

result=number1 D、result=number2

4.Java中表示字符串的类有两种:String 和(B)

A.Buffer

B.StringBuffer

C.BufferString

D.DateBuffer

5.以下程序段的结果是:(C)

char a[]={…a?,?b?,?c?,?d?};

char b[]=new char[4];

b=a;

for(int i=3;i>0;i--)

System.out.println(b[i]);

A. abcd

B. dcba

C. dcb

D. abc

6.以下程序段的结果是:(B )

String str = "abcdefghijk";

String s = "bcde";

int index = 0;

index = str.indexOf(s, index);

str = str.substring(0, index) +

str.substring(index+4);

System.out.println(str);

A. abcdefghijk

B. afghijk

C. abcde

D. bcdefghijk 7.程序的执行结果是(B)

public class Test {

public static void main(String [] args){

System.out.println(“”+'a'+1);

}

}

A 98

B a 1

C 971

D 197

8.程序的执行结果是(A)

public class Test {

public static void main(String [] args){

String str1= new String("abc");

String str2 = new String("abc");

String str3=str1;

if(str1.equals(str2)){

System.out.println("true");

}else{

System.out.println("false");

}

if(str1==str3){

System.out.println("true");

}else{

System.out.println("false");

}

}

A true true

B true false

C false true

D false false 9.比较字符串是否相等使用的方法是( A)

A.equals()

B.check()

C.equalCase()

https://www.doczj.com/doc/4415349469.html,pareTo()

10.关于String 和StringBuffer 下面说法正确的是(A)

A.String操作字符串不改变原有字符串的

内容

B.StringBuffer连接字符串速度没有String

C.String 可以使用append方法连接字符

D.StringBuffer 在java.util包中

11.所有类的基类(A)

A https://www.doczj.com/doc/4415349469.html,ng.Object

B https://www.doczj.com/doc/4415349469.html,ng.Class

C java.applet.Applet

D java.awt.Frame

12.使用(D)方法可以获得Calendar类的实例。

A.get()

B.equals()

C.getTime()

D.getInstance()

13.关于Map和List,下面说法正确的是(B和D都是对的)。A.Map继承List

B.List中可以保存Map或List

C.Map和List只能保存从数据库中取出的数据D.Map的value可以是List或Map

14.给定如下Java代码,编译运行的结果是(B)。

import java.util.*;

public class Test {

public static void main(String[] args) { LinkedList list=new LinkedList();

list.add(“A”);

list.add(2,”B”);

String s=(String)list.get(1);

System.out.println(s);

}

}

A.编译时发生错误

B.运行时引发异常

C.正确运行,输出:A

D.正确运行,输出:B

三.判断题:

1.java中字符串是通过字符数组来实现的。(错)

2.StringBuffer类中的length()方法和capacity()方法返回的值相同。(错)3.String类中的concat()函数功能类似于字符串“+”运算,将两个字符串连接起来。

(对)

4.判断两个字符串是否相等用“= =”符号。(错)

四.编程题

1.编写一个程序,接收用户输入的一段英文文字后,输出其中的字符数、单词数和句子数(设句子以“?”、“!”或者“.”结束)

2.编程实现从键盘输入任意多个整数,将所有整数放入容器中,然后求所有整数的和。

第九章一.填空题:

1.若想在程序中使用JLabel类,则程序可以使用import java. swing .JLabel;语句引入JLabel 类。

2.组件不能单独地显示出来,必须把它们放在一定的容器中才能显示出来。

二.选择题:

1.在以下Java的包中,提供图形界面构件的包是:A

A、java.swing

B、https://www.doczj.com/doc/4415349469.html,

C、java.io

D、java.rmi 2.Panel类的默认布局管理器是:A

A、BorderLayout

B、CardLayout

C、FlowLayout

D、GridBagLayout

3.下列不属于Swing中组件的是:C

A、JPanel

B、JTable

C、Menu

D、JFrame

4.在Java中,实现用户界面功能的包是:D A、java.applet B、java.transaction C、java.util D、java.swing

5.Panel和Applet的默认布局管理器是:C A、CardLayout B、FlowLayout C、BorderLayout D、GridLayout

6.下面哪个swing组件不是容器(B)。

A、JScrollPane

B、JScrollBar

C、JWindow

D、JFrame 三.程序设计题:

1、程序3中的空白处应该补充的内容是什么?在该程序中,JPanel类的直接父类应该是Component、Container还是JFrame,该父类的特点是什么,有哪些特殊方法?

public class Login extends JFrame implements ActionListener

{

//声明图形组件

。。。。。。。

public Login()

{

this.setTitle("登录"); //设置标题

JPanel panel = new JPanel();

panel.setLayout(new GridBagLayout());

GridBagConstraints gbCons = new GridBagConstraints();

//在frame上放置图形组件JPanel btnPanel = new JPanel(); 。。。。。。。。。。。。。。。。。。。。。。。。

btnLogin = new JButton("登录");

btnPanel.add(btnLogin);

btnLogin.addActionListener(_______);

//为登录按钮添加监听器。。。。。。。。。。//为注册按钮添加监听器。。。。。。。。。。。。

//为取消按钮添加监听器。。。。。。。。

}

public void actionPerformed(ActionEvent e1) {。。。。。。。。。。}//end of actionPerformed

public static void main(String args[])

{

new Login();

}

}//end of class Login

第十章一.填空题:

1.在java.io包中有某个类同时实现了DataInput接口和DataOutput接口,这个类是RandomAccessFile 。

2.所有字节流类的超类是InputStream和OutputStream,所有字符流类的超类是Reader 和Writer

二.选择题:

1.下列叙述中,错误的是:C

A、所有的字节输入流都继承自InputStream类

B、所有的字节输出流都继承自OutputStream

C、所有的字符输入流都继承自OutputStreamReader类

D、所有的字符输出流都继承自Writer类2.查找随机文件的记录时,应使用的方法是:C

A、readInt()

B、readBytes(int n)

C、seek(long l)

D、readDouble()

3.在文件类提供的方法中,用于创建包括父目录的所有目录层次的方法是(B)。

A、mkdir()

B、mkdirs()

C、list()

D、listRoots()

4.以下哪个类中有readLine方法:

A、InputStream

B、OutputStream

C、BufferedReader

D、BufferedWriter

4.下列写法错误的是(D)

A File f = new File (“a.txt”);

B File f = new File (“d:\\a.txt”);

C FileInputStream fis = new FileInputStream (new File (“a.txt”));

D FileOutputStream fos = new FileOutputStream ( File (“.”));

5.下列说法正确的是(A)

A InputStream 是字节流

B Reader 是字节流

C Writer 是字节流

D BufferWriter 可以从文件中读取一行

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

JAVA期末考试试卷

天津城市建设学院2007~2008学年第二学期 《 java 语言程序设计A 》 试题A 卷 课程号:073101-0 试卷说明:闭卷考试,时间120分钟。 一、 填空(本题共15空,每空2分,共30分) 1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生_____4___个文件名与类名相同扩展名为___.Class_____的字节码文件。 2.Java 中所有类都是类 __Object__的子类。 3.请填出在java .lang 包中与下列基本数据类型相对应的封装类: float :java .lang .Float , char : _ java .Lang.char_______, boolean : ___ java .Lang.boolean_____。 4.被关键字____final______修饰的方法是不能被当前类的子类重新定义的方法 5.线程的四种状态是__新建_____ 、_运行_ 、_中断 、__死亡___。 6.java 语言中__https://www.doczj.com/doc/4415349469.html,ng.Objet ___是所有类的根。 7.Swing 的事件处理机制包括__事件的监听者__、事件和事件处理者。 8.URL_____Uniform Resourse Locator_____是的缩写。 9.java 有两类应用程序java Application 和____java 10.转义字符以___\__开头。 二、选择(本题共20小题,每题2分,共40分) 1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的 ? ( B ) A 、 ArrayList myList=new Object (); B 、 List myList=new ArrayList (); C 、 ArrayList myList=new List (); D 、 List myList=new List (); 2.paint()方法使用哪种类型的参数? ( A ) A 、 Graphics B 、 Graphics2D C 、 String D 、 Color 3.指出正确的表达式 ( C ) A 、 byte=128; B 、 Boolean=null; C 、 long l=0xfffL; D 、 double=0.9239d; 4.指出下列程序运行的结果 ( B ) public class Example{ String str=new String("good"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex .change(ex .str,ex .ch); System .out .print(ex .str+" and "); Sytem .out .print(ex .ch); } public void change(String str,char ch[]){ str="test ok"; ch[0]='g'; } } B 、 good and abc B 、 good and gbc C 、test ok and abc D 、 test ok and gbc 5.运行下列程序, 会产生什么结果 ( A )

大学java期末考试试题和标准答案

《Java程序设计基础》期终考试试卷(模拟) (闭卷) 一、简单编程题(共50分) 在考试文件夹中新建一个应用程序proj1(应用程序地文件夹名称为proj1),按照以下要求编写程序代码. 1. 在程序中定义Person类,为该类编写如下字段、构造器、访问器、修改器和相应地其他方法.(20分) (1)在Person类中定义两个字段: 私有访问权限,类型为String地name字段; 私有访问权限,类型为int地age字段. (2)在Person类中定义构造器 构造器有两个参数,第一个参数地类型是String,名字为name.第二个地类型是int,名字是age.第一个参数地值赋给字段name,第二个参数地值赋给字段age. (3)为Person类地两个字段分别编写访问器方法,方法名称分别为getName和getAge.getName方法返回类型为String地name字段地值;getAge方法返回类型为int地age字段地值. (4)为Person类地两个字段分别编写修改器方法,方法名称分别为setName和setAge.setName方法有一个String类型地参数,方法中用该参数来设置字段name地值;setAge方法有一个int类型地参数,方法中用该参数来设置字段age地值,并且保证age 字段地值不能为负数,如果要将age设置为负数则给出错误提示. (5)为Person类写一个叫做toString地方法,该方法不需要参数,有返回值.它返回一个字符串,字符串中包含name字段和age字段地值,如果name字段地值是“Helen”,age字段地值是20,则返回字符串:“Name:Helen. Age:20”. 2. 在程序中定义Student类,Student类继承Person类.(10分) (1)在Student类中除了继承其超类Person地name字段和age字段外,它还有自己地字段String类型地school,该字段地访问权限为私有. (2)Student类地构造器有三个参数,第一个参数为name,String类型;第二个参数为age,int类型;第三个参数为school,String类型,这三个参数地值分别赋给三个字段name、age和school. (3)在Student类中重写其超类Person地toString方法,要求该方法返回地字符串不仅包含超类Person中地name字段和age字段地值,而且包含子类Student中地school 字段地值.如果name字段地值是“Helen”,age字段地值是20,school字段地值是“山西大学商务学院”,则返回地字符串为“School:山西大学商务学院Name:Helen. Age:20”. 3. 在程序中定义Test类,在Test类中定义一个main方法,在main方法中实现如下操作:(10分) (1)创建一个Person类地对象,它地name为“John”,age为18,对象名为person1; (2)创建一个Student类地对象,它地name为“Helen”,age为18,school为“MIT”,对象名为stuent1; (3)分别输出这两个对象地相关信息(调用它们地toString方法). 4. 分别为Person类和Student类编写文档注释,并生成应用程序地类文档.要求如下:(10分) (1)类地文档注释,包括类名、类地作者及版本号,作者地名字用考生地姓名标注,版本号使用考试地日期; (2)构造器和各个方法地文档注释,包括方法地名称、构造器和方法地功能说明,要求标注构造器和方法中地参数及返回值,并说明参数地类型、名称和返回值地类型. (3)文档注释完成后要使用BlueJ地JavaDOC工具生成应用程序地类文档. 二、代码改错(共20分)

Java期末考试试卷答案A

JAVA程序设计试卷库(第5套) 一、单选题(每小题 2 分,共 20 分) 1、Java Application源程序的主类是指包含有( A )方法的类。 A. main方法 B. toString方法 C. init方法 D. actionPerfromed方法 2、分析下面的程序段,下面的哪个描述是正确的。( B ) char mychar=’c’; switch(mychar){ default: case ‘a’“a”);break; case ‘b’“b”);break; } A.switch语句块是错误的, 因为switch后面的表达式 值的类型不是整数; B.switch语句块是正确的; C.switch语句块是错误的, 因为default没有放在语 句块的最后面; D.代码运行时,没有任何输出 结果。 3、编译并运行下面的Java程序, 将产生( B )结果。 class A{ int var1=1; int var2; public static void main(String[] args){ int var3=3; A a=new A(); } } A. 0 B. 4 C. 3 D. 代码无法编译,因为var2根本 没有被初始化 4、在Java中,下面关于包的陈述 中正确的是( D )。

A. 包的声明必须是源文件的任意位置; B. 包的声明必须紧跟在import 语句的后面; C. 只有公共类才能放在包中; D. 可以将多个源文件中的类放在同一个包中 5、 在Java 语言中,当一个类的某个变量声明为protected 时下列说法正确的是( C )。 A. 只有同一类中的成员才能访问它; B. 不同包中的任何其他类都能够访问它; C. 同包中的任何其他类能够访问它; D. 不同包中的子类不可以访问该变量。 6、在Java 中,执行下面的语句后,c 的值为( D )。 String s= "Jessica "; char c=s.charAt(6); A. "c " B. "a " C. 'c ' D. 'a ' 7、设有下面两个赋值语句: a = Integer.parseInt(“1024”); b = Integer.valueOf(“1024”).int Value(); 下述说法正确的是( D )。 A .a 是整数类型变量,b 是整数类对象。 B .a 是整数类对象,b 是整数类型变量。 C .a 和b 都是整数类对象并且它们的值相等。 D .a 和b 都是整数类型变量并且它们的值相等。 8、事件剪裁类如WindowAdapter (它实现了WindowListener 接

大学java期末试卷2份(含答案)

Java大学考试试卷 一、选择题(每题2分,共30分) 1、Java中main()函数的值是。 A、 String B、int C、char D、void 2、如下字串是Java中的标识符。 A、 fieldname B、super C、3number D、#number 3、下面的代码段中,执行之后i 和j 的值是。 int i = 1; int j; j = i++; A、 1, 1 B、1, 2 C、2, 1 D、2, 2 4、已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 };下面表达式的值与数组下标量总数相等。 A、 m.length() B、m.length C、m.length()+1 D、m.length+1 5、当浏览器返回到新URL的包含applet 的页面时调用以下函数。 A、 init() B、start() C、stop() D、destroy() 6、以下方法用于定义线程的执行体。 A、 start() B、init() C、run() D、main() 7、如果类中的成员变量可以被同一包访问,则使用如下约束符。 A、 private B、public C、protected D、final 8、以下约束符可用于定义成员常量。 A、 static B、final C、abstract D、No modifier can be used 9、下面方法与applet的显示无关。 A、 update() B、draw() C、repaint() D、paint() 10、请问如下方法可以将MenuBar加入Frame中。 A、 setMenu() B、setMenuBar() C、add() D、addMenuBar() 11、下面不是Java中的容器。 A、 ScrollPane B、Canvas C、Dialog D、Applet 12、下面的程序段创建了BufferedReader类的对象in,以便读取本机d盘my文件夹下的文件1.txt。File 构造函数中正确的路径和文件名的表示是。 File f=new File(填代码处); file=new FileReader(f); in=new BufferedReader(file); A) "1.txt" B) "d:\\my\\1" C) "d:\\my\\1.txt" D) "d:\ my\1.txt" 13、有整型数组: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 2 14、下面的程序段执行后输出的结果是。 StringBuffer buf=new StringBuffer("Beijing2008"); buf.insert(7,"@"); System.out.println(buf.toString()); A) Beijing@2008B) @Beijing2008 C) Beijing2008@ D) Beijing#2008 15、.下面表达式可用得到x和y的最大值。 A) x>y?y:x B) xy?(x+y):(x-y) D) x==y?y:x; 二、多选题(每题至少有一个正确答案,多选少选都不给分,每题2分,共10分) 16、下面赋值语句是合法的。 A、float a = 2.0 B、double b = 2.0 C、int c = 2 D、long d = 2 17、下面语句是创建数组的正确语句。 A、 float f[][] = new float[6][6]; B、float []f[] = new float[6][6]; C、float f[][] = new float[][6]; D、float [][]f = new float[6][6]; 18、Java中如下约束符是正确的。 A、 private B、public C、protected D、protect 19. 下面事件监听器在Java中有事件适配器。 A、 MouseListener B、KeyListener C、ActionListener D、WindowListener 20、已知如下的命令执行 java MyTest a b c,语句是正确的。 A、 args[0] = "MyTest a b c" B、args[0] = "MyTest" C、args[0] = "a" D、args[1]= 'b' 填空题(每空格2分,共20分) 1. 创建类的对象时,使用运算符__________给对象分配内存空间。 2. 定义类的构造方法不能有返回值类型,其名称与____ _名相同。

Java web期末考试题

第1页(共7页) 天津师范大学期末考核 2015—2016 学年第2学期 期末考核试卷 科目:Java Web 应用开发 学院:计信学院 专业:计算机科学 一、 单选题:(每小题2分,共10分) 1. 下列语句属于声明语句的是( A )。 A .<%! Int a = 4;%> B.<% int a=4;%> C .<%--int a=4-- %> D. <%@ int a=4%> 得分 2. 一个servlet 的生命周期不包括( B )方法? A .init( )方法 B. invalidate( )方法 C .service( )方法 D .destroy( )方法 得分 3. Application 对象的作用域是( B )。 A . 一次会话 B. 整个应用程序 C . 一次请求 D . 整个页面 得分 4. 下面对servlet 中重定向说法描述错误的是( D )。 A .使用的是HttpServletResponse 接口的sendRedirect()方法 B. 源组件的响应结果不会发送给客户端 C .sendRedirect()方法后的代码仍会执行 D .源组件和目标组件共享ServletRequest 对象

第2页(第7页) 得分 5. 有一个JavaBean 组件,类名为Student ,此JavaBean 组件的获得访问方法是getTotalScore,其功能是获得某个学生几门功课的总分,返回值保留一位小数,则以下关于getTotalScore 的声明正确的是( B )。 A .public int getTotalScore() B. public float getTotalScore() C .protected int getTotalScore() D .protected float getTotalScore() 得分 2. 3. Sevlet 过滤器核心对象放置在javax.servlet 包中,其名称为 4.

Java期末考试试卷1

信息学院2006—2007学年第二学期期末考试试题A 课程名称:Java 语言程序设计主讲:年级: 班级姓名学号 题号一二三四五合计 分数 一、选择(每题1分,共20分) 1.有一个名为MyClass的public类,想成功编译需满足以下哪个条件?() A. MyClass类中必须定义一个正确的main()方法。 B. MyClass必须定义在MyClass.java源文件中。 C. MyClass类必须定义在MyClass包中。 D. MyClass类必须被导入。 2.以下哪些修饰符不能用于顶层类?( ) A. public B. private C. abstract D. final 3.以下哪个是java中合法的关键字?( ) A. array B. Boolean C. protect D. super 4.以下哪些是合法的标识符?( ) A.%abcd B. 2abcd C. package D. _a_long_name 5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同。这种面向对象程序的特性称为. () A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 6.有以下代码,请问该程序的运行结果是什么?( ) class Example { public static void main(String args[]){ boolean b=true; System.out.println(b); } } A. 打印输出true B. 打印输出1 C.编译错误 D. 无内容输出 7.以下哪些是基本数据类型?( ) A.int B. String C. Integer D. Float 8. 给出以下代码,请选择正确的选项?( ) class Example{ public static void main(String[] args){ char a=”\u1234”; } } A. 代码编译成功 B. 代码编译成功,但有警告 C. 代码编译失败 9.以下哪个语句用于声明一个二维数组?( ) A. int[5][5] a=new int[][]; B. int a=new int[5,5] C. int[][] a=new int[5][5]; D. int[][] a=new [5]int[5]; 10.给出以下代码,请问该程序的运行结果是什么?()

Java期末考试题

2010年——2011年Java期末考试题 一、判断题。 1.Java语言是平台无关的语言。T 2.类的静态方法中可以访问该类的非静态数据成员.F 3.Java中方法调用时参数传递都是按值传递的,因此从方法中退出时,参数的值是不 会变的。T 4.覆盖方法所抛出的异常不能比原方法更多。T 5.Final 方法不能被覆盖。T 6.抽象类中一定包含抽象方法。F 7.接口中的方法必须是抽象方法。T 8.在方法定义中,所以可能发生的异常都必须用try{} catch(){}捕捉。F 9.Java支持多重继承。F 10.Final修饰的类不能派生子类。T 11.覆盖的同名方法中,子类方法不能比父类方法的访问权限更严格。T 12.不能在静态方法中使用this.T 13.抽象类中不能创建对象。T 14.一个类可以实现多接口。T 15.接口中可以包含非静态成员。F 16.不论是否捕捉到异常try{}catch(){} final{}语句中finally块中的代码总要被执行。T 17.一个类实现一个接口,则该类必须实现接口中的所有方法。F 18.线程使用sleep方法去休眠后可以使用notify方法唤醒。F 19.线程使用sleep方法休眠是会释放该线程同步锁定的对象。F 20.Final类中的属性和方法都必须是final的。F 二、选择题 1、Java中复合数据类型不包括(D) A.类类型 B.数组 C.接口类型 D.指针 2、请从四个选项中选择答案,下列代码的执行结果是:(C) Public class Test{ Public static void main(String args[]){ Float t=9.0f; Int q=6; System.out.println((t++)*(--q)); } } A.40 B.40.0 C.45.0 D.36.0 3、下列关于修饰符混用的说法,错误的是(D) A.abstract 不能与final 并列修饰同一个类 B.abstract类中可以有非abstract的方法 C.普通类(非abstract类)中不能有abstract方法 D.static方法中能处理非static的属性 4、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(A) A.可以被该类自身、与它在同一个包中的其它类、在其它包中的该类的子类所访问B.只能被该类本身和该类的所有的子类访问 C.只能被该类自身所访问 D.只能被同一个包中的类访问 5、x=2,y=3,z=4,则表达式z*=y++*--x的值是(A) A.12 B.24 C.16 D.3 6、以下赋值语句正确的是(D) A.char c1=”a” B.float f1=3.22 C.byte b1=266 D.long L1=0xAC8L 7、Java不支持多重继承,但我们可以通过(B)实现 A.多态 B.接口 C.覆盖 D.抽象类 8.已知类person是类student的父类,以下数组定义和赋值哪些是正确的(A) A. person p[]=new person[3]; p[1]=new student(); B .student s[]=new person[3]; s[1]=new person(); C .person p[]= new student[3];p[1]= new person(); D .student s[]=new student[3];s[1]=new person; 9 编译MyClass.java之后,得到了三个字节码文件:MyClass.class , MyClasslittle$.class MyClass$1.class.这表明(C) A.MyClass类中的两个方法:little和1 B. MyClass.Java中有三个类:MyClass、little和1 C. MyClass类中有两个内部类:一个是命名的little,另一个是匿名的1 D. MyClass、little和1,这三者没什么关系 10、main 方法是java Application 程序执行的入口点,关于main方法的方法头以下(B)是合法的。 A.public static void main() B.public static void main(String arg[]) C.public static int main(String[] arg) D. B.public void main(String arg[]) 11、当编译和运行下面的代码会出现什么情况?(A)

JAVA语言程序设计期末考试试题及答案

J A V A语言程序设计期末考试试题及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

J A V A语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0]

7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=, y=, z=;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y

《JAVA语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案 (应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

JAVA期末考试考卷及答案

《J A V A语言程序设计》期末考试模拟试题 一、单选择题(每小题2分,共10分) 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展 名为( B )。 A. .java B. .class C. .html D. .exe 2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方 法来完成一些画图操作。 A. start( ) B. stop( ) C. init( ) D. paint( ) 4、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为 前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。

MyApplet必须是 Applet 类的子类并且存储该源程序文件的文件名为MyApplet 。 3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译 器编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 . class 的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占 用 2 字节内存空间。 5、设 x = 2 ,则表达式 ( x + + )/3 的值是 1 。 6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为 true 和 false 。 7、抽象(abstract)方法方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法方法是不能被当前类的子类重新定义的方法。 8、创建一个名为 MyPackage 的包的语句是 package MyPackag , 该语句应该放在程序的位置为:应该在程序第一句。 9、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。 int s = 0 ; for ( int i = 0 ; i < ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; 10、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。

java_期末考试试题(含答案)

1、如下哪个是Java中有效的关键字。( C、false ) 2、下面的代码段执行之后count的值是什么。( D、16 ) int count=1; for(int i=1;i<=5;i++){ count+=i; } System.out.println(count); 3、下列哪一个import命令可以使我们在程序中创建输入/输出流对象。( C、import java.io.*; ) 4、下列选项中,不属于Java语言特点的一项是。( C、编译执行 ) 5、阅读下列代码段,选出该代码段的正确的文件名。( D ) class A{ void methodl(){ System.out.println(”methodl in class A”):} } public class B{ void method2(){ System.out.println(”method2 in class B”):} public static void main(String args[]){ System.out.println(”main()in class B”): } } A、A .java B、A.class C、B.class D、B.java 6、下面哪条语句把方法声明为抽象的公共方法。( C.public abstract void method(){} 7、编译下面源程序会得到哪些文件。( D ) class A1{ }class A2{ } public class B{ public static void main(String args[ ]){ } } A、只有B.class文件 B、只有A1.Class和A2.class文件 C、有A1.class、A2.Class和B.class文件 D、编译不成功 8、定义类头时能使用的修饰符是(C、protected )。 A、private B、static C、protected D、abstract 9、为了区分重载多态中同名的不同方法,要求( A、形式参数个数或者类型不同 A、形式参数个数或者类型不同 B、返回值类型不同 C、调用时用类名或对象名做前缀 D、形式参数名称不同 10、float类型数据和double类型数据做加法,得到结果的类型是(C、double类型 )。 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,通常的错误不是如下的哪一项?(B、文件名拼写错误) 12、int类型被包装在如下的哪一个类中?( B、java.1ang.Integer ) 13、关于对下列代码段的描述,正确的一项是( C )。 catch(Exception e){ System.Err. println(“An exception was thrown”); throw e; } A、程序终止 B、编译出错 C、该异常不会被处理 D、该异常会继续被上层处理 14、下列说法中,错误的一项是( C )。 A、内部类是被定义于另一个类中的类 B、使用内部类实现监听器,在编程时比较容易实现 C、内部类对象可以访问外部类的成员方法和变量,包括私有成员

java期末考试试题(含答案)

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应 该是( C )。 A、’a’ B、12 C、’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ .... } B、public x extends y{ .... } C、public class x extends y{ .... } D、class x extends y implements y1{ .... } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

中南民族大学《Java语言程序设计》期末试卷A卷

科目序号:6002 A卷 《Java语言程序设计》期末试卷 (试卷总分:100分,考试时间:120分钟,答案写在答卷纸上) 一.判断题(每题1分,共10分) 1.无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一个名为A的字节码文件。(X )2.Java的各种数据类型所占用的内存长度与具体软硬件环境有关。(X )3.静态初始化器是在其所属的类加载内存时由系统自动调用执行的方法。(O )4.与C语言不同的是,Java语言中的数组元素下标总是从1开始。(X )5.在Java的方法中定义一个常量要用const关键字。(X )6.Java有两类程序:Java Application和Java Applet,其中Java Applet程序只能在图形界面中工作,而Java Application程序只能在字符界面中工作。(X)7.在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。(X )8.程序员可以不必释放已创建的对象,因为Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(X )9.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出System.out 和标准错误输出System.err。(O )10.即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参的,函数体为空。(O ) 二.单项选择题(每题2分,共40分) 1.编译Java Applet 源程序文件产生的字节码文件的扩展名为( B)。 A、java B、class C、html D、exe 2.Java application中的主类需包含main方法,main方法的返回类型是什么?(D ) A、int B、float C、double D、void 3.以下哪个方法用于定义线程的执行体?( C ) A、 start() B、init() C、run() D、synchronized() 4.当浏览器暂时离开含applet 程序的页面时,以下选项中的哪个方法将被执行?(D ) A、init() B、start() C、destroy() D、stop() 5.下面哪个不是Java中的容器? ( A ) A、Canvas B、ScrollPane C、Applet D、Dialog 6.以下标识符中哪项是不合法的( A ) A、const B、$double C、hello D、BigMeaninglessName 7.以下哪个关键字可以用来为对象加互斥锁?(D )

相关主题
文本预览
相关文档 最新文档