Java初级阶段测试题.docx

上传人:b****5 文档编号:6637440 上传时间:2023-01-08 格式:DOCX 页数:13 大小:19.81KB
下载 相关 举报
Java初级阶段测试题.docx_第1页
第1页 / 共13页
Java初级阶段测试题.docx_第2页
第2页 / 共13页
Java初级阶段测试题.docx_第3页
第3页 / 共13页
Java初级阶段测试题.docx_第4页
第4页 / 共13页
Java初级阶段测试题.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

Java初级阶段测试题.docx

《Java初级阶段测试题.docx》由会员分享,可在线阅读,更多相关《Java初级阶段测试题.docx(13页珍藏版)》请在冰豆网上搜索。

Java初级阶段测试题.docx

Java初级阶段测试题

软件工程师(Java)初级阶段测试题

一、选择题:

(每题2分)

1.名为HelloWorld.java的Java应用程序如下:

publicclassHelloWorld

{

publicstaticvoidmain(Stringargs[])

{

System.out.println("HelloWorld!

");

}

}

将这个程序放在C:

\Test下,然后在命令行窗口中,进入到C:

\Test路径执行如下指令:

javachelloworld.java将得到()结果。

A.编译出错。

B.编译成功,生成名为HelloWorld.class的文件。

C.编译成功,生成名为helloworld.class的文件。

D.找不到名为helloworld.java的文件。

2.下面的程序名为Student.java:

publicclassStudent

{

privateStringname;

publicStudent(Strings_name)//1

{

name=s_name;//2

}

publicstaticvoidmain(Stringargs[])

{

Students=newStudent();//3

}

}

使用如下指令编译:

javacStudent.java。

将会得到的结果()。

A.将会顺利通过编译,并将产生一个Student.class的类文件。

B.编译时在//3处出错。

C.编译时在//2处出错。

D.编译时在//1处出错。

3.关于下面的类描述中正确的是()。

classTest{//1

voidtest(inti){//2

System.out.println("Iamanint.");//3

}//4

voidtest(Strings){//5

System.out.println("Iamastring.");//6

}//7

//8

publicstaticvoidmain(Stringargs[]){//9

Testt=newTest();//10

charch='y';//11

t.test(ch);//12

}//13

}//14

A.编译出错

B.编译通过,运行出错

C.编译通过,运行时输出“Iamanint”

D.编译通过,运行时输出“Iamastring”

4.关于下述程序:

publicclassTest3

{

publicstaticvoidmain(String[]agrs)

{

byteb=2,e=3;//1

bytef=b+e;//2

System.out.println(f);//3

}

}

描述正确的是()。

A.编译通过,运行时打印出5。

B.编译通过,运行时打印出23。

C.编译不通过,在//2处有错误,因为此处f必须是一个int类型的变量。

D.编译不通过,在//1处有错误,不能这样定义变量

5.在Java中,关于让垃圾回收器强制回收对象的说法中,正确的是()。

A.垃圾回收不能强制

B.调用System.gc()方法

C.调用System.gc()方法,并且将需要回收的对象引用作为参数传递给这个方法

A.D.调用Runtime.gc()方法

6.关于下述程序:

publicclassTest4

{

publicstaticvoidmain(String[]agrs)

{

doublex=1.234;//1

doubley=2;//2

System.out.println(""+x+y);//3

System.out.println(x+y+"");//4

}

}

描述正确的是()。

A.编译出错。

B.编译通过,执行的时候在//2处报错。

C.编译通过,执行时在//3处打印出3.234,在//4处打印出3.234。

D.编译通过,执行时在//3处打印出1.2342.0,在//4处打印出3.234。

7.将当前目录下的所有文件都压缩到一个test.jar包中,并且将压缩信息显示到控制台上,可以使用下列的()命令。

A.jarvftest.jar.B.jarcvftest.jar.

C.jarcvtest.jar/D.jarcvtest.jar.

8.下述程序:

publicclassTest9

{

staticinti=1;

static

{

i++;

}

publicTest9()

{

i++;

}

publicstaticvoidmain(String[]args)

{

Test9t1=newTest9();

System.out.println(t1.i);//1

Test9t2=newTest9();

System.out.println(t2.i);//2

}

}

编译运行后在//1和//2处分别打印出()。

A.2和2B.3和3C.3和4D.4和3

9.关于下述三个接口:

publicinterfaceIA

{

publicvoidmethodA();

}

publicinterfaceIB

{

publicvoidmethodB();

}

publicinterfaceICextendsIA,IB

{

publicvoidmethodA();

}

正确的是()。

A.接口IC不能通过编译,因为它继承了两个接口。

B.接口IC不能通过编译,因为它定义了一个和IA中一样的方法methodA()。

C.接口IC不能通过编译,因为它继承了两个接口,并且还定义了一个和IA一样的methodA()方法。

D.接口IC能够顺利通过编译。

10.下述语句执行结果为()。

int[]arr=newint[10];

A.arr[0]是0B.arr[9]是0

C.arr[10]是0D.arr[0]是null

11.关于break和continue语句,下面说法错误的有()。

A.break只能用于循环语句中。

B.continue只能用于循环语句中。

C.在循环语句中,break语句将终止循环;而continue是略过当前循环中剩余的语句进入下一次循环。

D.在循环语句中,continue语句将终止循环;而break是略过当前循环中剩余的语句进入下一次循环。

12.下面标识符合法的有()

A.IAMAClassB.$byteC.constD._year

13.关于垃圾收集的哪些叙述是对的?

A.程序开发者必须自己创建一个线程进行内存释放的工作。

B.垃圾收集将检查并释放不再使用的内存。

C.垃圾收集允许程序开发者明确指定并立即释放该内存。

D.垃圾收集能够在期望的时间释放被java对象使用的内存。

14.下面的程序的输出结果是:

()

classSuperClass{

static{

System.out.println("SuperClass");

}

SuperClass(){

System.out.println("SuperClass()");

}

publicstaticvoidmain(String[]args){

SubClasssc=newSubClass();

}

}

classSubClassextendsSuperClass{

static{

System.out.println("SubClass");

}

SubClass(){

System.out.println("SubClass()");

}

}

A.SuperClass/SubClass/SuperClass()/SubClass()/

B.SuperClass/SuperClass()/SubClass/SubClass()/

C.SubClass/SuperClass/SubClass()/SuperClass()/

D.SubClass/SubClass()/SuperClass/SuperClass()/

15.下面程序的运行结果是:

()

classSuperClass{

publicvoidf(){

System.out.print("SuperClass.f()/");

}

}

classSubClassextendsSuperClass{

publicvoidf(){

System.out.print("SubClass.f()/");

}

}

classThirdClass{

publicvoidg(SuperClassarg){

System.out.print("g(SuperClass)/");

arg.f();

}

publicvoidg(SubClassarg){

System.out.print("g(SubClass)/");

arg.f();

}

publicstaticvoidmain(String[]args){

ThirdClasstc=newThirdClass();

SuperClasssc=newSubClass();

tc.g(sc);

}

}

A.g(SubClass)/SubClass.f()/B.g(SuperClass)/SuperClass.f()/

C.g(SuperClass)/SubClass.f()/D.g(SubClass)/SuperClass.f()/

16.取出字符串Stringtarget="IbmSunJavaBeaWeblogicOracle..."中的子串“Java”的语句是:

()

A.target.substring(5,10);B.target.substring(6,10);

C.target.substring(5,9);D.target.substring(6,9);

17.下列描述正确的是:

()

A.hashCode()返回是对象在内存唯一的标识,对象不同,hashCode()返回值一定不同。

B.hashCode()方法可以重写,但重写的逻辑要和equals()保持一致性。

C.语句System.out.println("java"=="java");打印出的结果为“false”。

D.HashSet容器在存放某一类的对象时,改变该类的hashCode()方法可能会影响到HashSet容器的效率

18.属于Collection容器的方法是:

()

A.iteratorB.hasNextElementC.toArrayD.next

19.下列三条输出语句输出的结果为:

()

System.out.print(Math.floor(156.1)+"/");

System.out.print(Math.ceil(-166.3)+"/");

System.out.print(Math.round(-123.5)+"/");

A.156.0/-167.0/-124/B.157.0/-167.0/-123/

C.157.0/-166.0/-124/D.156.0/-166.0/-123/

20.下面的程序会有编译错误,更正的方法为:

()

classOuterClass{

publicvoidf(){

Strings1="inner";

classInnerClass{

publicvoidg(){

System.out.println(s1);

}

}

}

}

A.将变量s1声明为staticB.将变量s1声明为public

C.将变量s1声明为finalD.将内部类InnerClass声明为static

21.已有接口定义:

A,B,C

packagetest;

publicinterfaceRole{

publicvoidaction()throwsjava.io.IOException;

}

下面的类定义不会有编译错误的是:

A.

packagetest;

publicclassAimplementsRole{

publicvoidaction()throwsjava.io.FileNotFoundException{}

}

B.

packagetest;

publicclassBimplementsRole{

publicvoidaction()throwsjava.io.IOException{}

}

C.

packagetest;

publicclassCimplementsRole{

publicvoidaction(){};

}

D.

packagetest;

publicclassDimplementsRole{

publicvoidaction()throwsException{}

}

22.下面程序的输出结果为:

importjava.io.*;

classTestRandomAccessFile{

publicstaticvoidmain(String[]args)throwsException{

RandomAccessFilefile=newRandomAccessFile("temp.dat","rw");

file.writeBoolean(true);

file.writeInt(100);

file.writeInt(12345);

file.writeInt(6789);

file.seek(5);

System.out.println(file.readInt());

}

}

A.100B.6789C.12345D.16777216

23.下面程序输出的结果是:

()

classSomeClass

implementsComparable{

privateintnumber;

privateStringname;

SomeClass(intnumber,Stringname){

this.name=name;

this.number=number;

}

publicStringtoString(){

returnname+number;

}

publicintcompareTo(Objectobj){

SomeClasssc=(SomeClass)obj;

intf=pareTo(sc.name);

intf1=number>sc.number?

1:

number==sc.number?

0:

-1;

returnf!

=0?

f:

f1;

}

publicstaticvoidmain(String[]args){

SomeClass[]array={

newSomeClass(10,"Java"),newSomeClass(9,"Java"),

newSomeClass(10,"J2EE")};

java.util.Arrays.sort(array);

for(inti=0;i

System.out.print(array[i]+"/");

}

}

}

A.J2EE10/Java9/Java10/B.Java9/J2EE10/Java10/

C.Java10/Java9/J2EE10/D.J2EE10/Java10/Java9/

24.下面的程序输出的结果为:

publicclassTest{

publicstaticvoidmain(String[]args){

StringBufferbuffer=newStringBuffer();

intvalue=18;

do{

inttemp=value&0x07;

buffer.append(temp);

}while((value>>>=3)!

=0);

System.out.println(buffer.reverse());

}

}

A.24B.23C.25D.22

二、简答题:

(每题4分)

25.简述单子模式的思路,并且写出一种实现方案:

26.写出private、public、protected以及Default各自的访问范围:

27.用简短的语言解释下列词汇

a)JVM

b)垃圾回收机制

c)多态

d)动态绑定

e)关键字synchronized

三、编程题(每题8分)

28.写一个类,当该类的实例创建时即启动一个线程,按照指定格式每隔5秒循环打印出当前的时间(提示:

使用Runnable接口或内部类创建线程,格式化日期使用java.text.SimpleDateFormat),指定的日期格式为:

××××年××月××日××点××分××秒。

29.写一个方法将一个字符串中连续出现的“Java”替换为一个“Java”。

例如:

字符串“JavaJavaBeaJ2eeJavaIBMJavaJavaJava”替换的结果为“JavaBeaJ2eeJavaIBMJava”。

(提示:

可以使用正则表达式)

30.写一个程序统计输入字符串中以“,”分隔的各种单词出现的次数。

例如:

输入的字符串为“java,java,j2ee,ibm,j2ee,ibm,j2me,java”,则该程序的输出结果应该为:

java3个;j2ee2个;ibm2个;j2me1个

(提示:

可以使用java.util.StringTokenizer和Map容器)

31.已知在文件路径“c:

\temp\target.bmp”,写出Java程序将该文件同名拷贝到路径“c:

\bak”下。

注意,由于文件较大,应考虑到程序的效率问题。

32.写出一段程序,从备选字符串“red”、“green”、“blue”、“black”、“white”中随机选出3个不同的字符串,并打印到控制台。

四、请从技术的角度谈谈你在该阶段课程中的收获和困惑。

(此题不计分)

软件工程师(Java)阶段测试答题纸

姓名:

_________________班号:

____________________

题目

合计

阅卷人

得分

一、选择题

01.[A][B][C][D]

02.[A][B][C][D]

03.[A][B][C][D]

04.[A][B][C][D]

05.[A][B][C][D]

06.[A][B][C][D]

07.[A][B][C][D]

08.[A][B][C][D]

09.[A][B][C][D]

10.[A][B][C][D]

11.[A][B][C][D]

12.[A][B][C][D]

13.[A][B][C][D]

14.[A][B][C][D]

15.[A][B][C][D]

16.[A][B][C][D]

17.[A][B][C][D]

18.[A][B][C][D]

19.[A][B][C][D]

20.[A][B][C][D]

21.[A][B][C][D]

22.[A][B][C][D]

23.[A][B][C][D]

24.[A][B][C][D]

软件工程师(Java)阶段测试答题纸

姓名:

_________________班号:

____________________

二、简答题(如本答题纸不够可向监考教师索要)

1.答:

2.答:

3.答:

4.答:

 

5.答:

三、编程题(如本答题纸不够可向监考教师索要)

1.答:

2.答:

3.答:

 

4.答:

 

5.答:

四、请从技术的角度谈谈你在该阶段课程中的收获和困惑。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1