JAVA实用教程题库.docx

上传人:b****5 文档编号:6197201 上传时间:2023-01-04 格式:DOCX 页数:30 大小:37.11KB
下载 相关 举报
JAVA实用教程题库.docx_第1页
第1页 / 共30页
JAVA实用教程题库.docx_第2页
第2页 / 共30页
JAVA实用教程题库.docx_第3页
第3页 / 共30页
JAVA实用教程题库.docx_第4页
第4页 / 共30页
JAVA实用教程题库.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

JAVA实用教程题库.docx

《JAVA实用教程题库.docx》由会员分享,可在线阅读,更多相关《JAVA实用教程题库.docx(30页珍藏版)》请在冰豆网上搜索。

JAVA实用教程题库.docx

JAVA实用教程题库

山东财经大学2012--2013学年第2学期期末试题

Java语言程序设计(06200081)试卷(A)

题号

总分

得分

签字

注意事项:

所有的答案都必须写在答题纸(答题卡)上,答在试卷上一律无效。

一、单选择题

1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()。

A.javaB..class

C.htmlD..exe

2、设x=1,y=2,z=3,则表达式y+=z--/++x的值是()。

A.3B.3.5

C.4D.5

3、不允许作为类及类成员的访问控制符的是()。

A.publicB.private

C.staticD.protected

4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。

A.staticvoidmethod()B.publicvoidmethod()

C.finalvoidmethod()D.abstractvoidmethod()

5.Javaapplication中的主类需包含main方法,以下哪项是main方法的正确形参?

()

A、StringargsB、Stringargs[]C、CharargD、StringBufferargs[]

6.以下关于继承的叙述正确的是()。

A、在Java中类只允许单一继承

B、在Java中一个类只能实现一个接口

C、在Java中一个类不能同时继承一个类和实现一个接口

D、在Java中接口只允许单一继承

7.以下哪个不是Java的原始数据类型()

A、intB、BooleanC、floatD、char

9.若需要定义一个类变量或类方法,应使用哪种修饰符?

()

A、staticB、packageC、privateD、public

10.给出下面代码,关于该程序以下哪个说法是正确的?

()

publicclassPerson{

staticintarr[]=newint[5];

publicstaticvoidmain(Stringa[])

{

  System.out.println(arr[0]); }

}

A、编译时将产生错误B、编译时正确,运行时将产生错误

C、输出零D、输出空

9.下列哪些语句关于Java内存回收的说明是正确的?

()

A、程序员必须创建一个线程来释放内存

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

11.以下代码段执行后的输出结果为()

intx=3;

inty=10;

System.out.println(y%x);

A、-1B、2C、1D、3

12.有以下程序片段,下列哪个选项不能插入到行1。

()

1.

2.publicclassInteresting{

3.//dosth

4.}

A、importjava.awt.*;B、packagemypackage;

C、classOtherClass{}D、publicclassMyClass{}

13.设有下面两个赋值语句:

a=Integer.parseInt(“12”);

b=Integer.valueOf(“12”).intValue();

下述说法正确的是()。

A、a是整数类型变量,b是整数类对象。

B、a是整数类对象,b是整数类型变量。

C、a和b都是整数类对象并且值相等。

D、a和b都是整数类型变量并且值相等。

16.类Parent、Child定义如下:

1.publicclassParent

2.{publicfloataFun(floata,floatb)throws

3.IOException{}

4.}

5.publicclassChildextendsParent{

6.

7.}

将以下哪种方法插入行6是不合法的。

()

A、floataFun(floata,floatb){}

B、publicintaFun(inta,intb)throwsException{}

C、publicfloataFun(floatp,floatq){}

D、publicintaFun(inta,intb)throwsIOException{}

17.在使用interface声明一个接口时,只可以使用()修饰符修饰该接口。

A、privateB、protectedC、privateprotectedD、public

18、有以下方法的定义,请选择该方法的返回类型()。

ReturnTypemethod(bytex,doubley)

{

return(short)x/y*2;

}

A、byteB、shortC、intD、double

19、关于以下代码段的说法正确的是()

1.Strings="abcde";

2.StringBuffers1=newStringBuffer("abcde");

3.if(s.equals(s1))

4.s1=null;

5.if(s1.equals(s))

6.s=null;

A、第1行编译错误,String的构造器必须明确调用

B、第3行编译错误,因为s与s1有不同的类型

C、编译成功,但执行时在第5行有异常抛出

D、编译成功,过程中也没有异常抛出

20、编译并运行以下程序,以下描述哪个选项是正确的()

1.classX{

2.protectiedStringtoString()i{

3.returnsuper.toString();}

4.}

A、编译通过运行无异常B、编译通过但运行时出错

C、行2出错,不能成功编译D、不能成功编译,行3出错

1、如下哪个是Java中的标识符()

A、publicB、superC、3numberD、width

2、如下哪个是Java中的标识符()

A、fieldnameB、superC、3numberD、#number

3、已知如下定义:

Strings="story";下面哪个语句不是合法的()

A、s+="books";B、s=s+100;

C、intlen=s.length;D、Stringt=s+“abc”;

4、如下哪个是Java中有效的关键字()

A、nameB、helloC、falseD、good

5、下面的代码段执行之后count的值是什么()

intcount=1;

for(inti=1;i<=5;i++){

count+=i;

}

System.out.println(count);

A、5B、1C、15D、16

6、定义一个类,必须使用的关键字是()

A、publicB、classC、interfaceD、static

7、定义一个接口必须使用的关键字是()

A、publicB、classC、interfaceD、static

1、下列程序段执行后的结果是()。

Strings=newString("abcdefg");

for(inti=0;i

System.out.print(s.charAt(i));

}

A)acegB)ACEGC)abcdefgD)abcd

2、有整型数组:

int[]x={12,35,8,7,2};,则调用方法Arrays.sort(x)(//自小到大排序)后,数组x中的元素值依次是().

A)2781235B)1235872

C)3512872D)8712352

4、应用程序的main方法中有以下语句,则输出的结果是()。

Strings1=newString("abc");

Strings2=newString("abc");

booleanb1=s1.equals(s2);

booleanb2=(s1==s2);

System.out.print(b1+""+b2);

A)truefalseB)falsetrueC)truetrueD)falsefalse

7、应用程序的main方法中有以下语句,则输出的结果是()。

Strings="12345#aaa#bbb#67890";

intn=s.indexOf("#");5

intk=s.indexOf("#",n+1);6---》9

intm=s.indexOf("#",k+1);10----》13

Strings2=s.substring(m+1);14

System.out.println(s2);

A)123456B)67890C)aaaD)bbb

8、下面程序段执行后b的值是()。

Integerinteg=newInteger(9);

booleanb=integinstanceofObject;

A)9B)trueC)1D)false

9、应用程序Test.java的源程序如下,在命令行键入:

javaTestaaabbc

回车后输出的结果是()。

publicclassTest{

publicstaticvoidmain(Stringargs[]){

intk1=args.length;//3

intk2=args[1].length();//2

System.out.print(k1+""+k2);

}

}

A)32B)12C)13D)33

10、应用程序的main方法中有以下语句,则输出的结果是()。

intb[][]={{1},{2,2},{2,2,2}};

intsum=0;//此处应该出错了

for(inti=0;i

for(intj=0;j

sum*=b[i][j];

}

}

System.out.println("sum="+sum);

A)32B)11C)2D)3

11、应用程序的main方法中有以下语句,则执行后输出的结果是()。

int[]x={125,21,5,168,98};

intmax=x[0];

for(inti=1;i

if(x[i]>max)

max=x[i];

}

System.out.println(max);

A)125B)5C)98D)168

12、程序Test.java编译运行后输出的结果是()。

publicclassTest{

Strings1="java";

publicstaticvoidmain(Stringargs[]){

intz=2;

Testt=newTest();

System.out.println(t.s1+z);

}

}

A)java2B)2C)没有输出结果D)java

13、应用程序的main方法中有以下语句,则输出的结果是()。

Strings1="0.5",s2="12";

doublex=Double.parseDouble(s1);

inty=Integer.parseInt(s2);

System.out.println(x+y);

A)12.5B)120.5C)12D)“12.5”

3、应用程序的main方法中有以下语句,则输出的结果是()。

Strings="xxxxxxxxxxxxxxx#123#456#zzzzz";

intn=s.indexOf("#");

intk=s.indexOf("#",n+1);

Strings2=s.substring(n+1,k);

System.out.println(s2);

A)123456B)123C)xxxxxxxxxxxxxxxD)zzzzz

4、关于下面的程序Test.java说法正确的是()。

publicclassTest{

Stringx="1";

inty;

publicstaticvoidmain(Stringargs[]){

intz=2;

System.out.println(x+y+z);

}

}

A)3B)102C)12D)程序有编译错误

5、应用程序的main方法中有以下语句,则输出的结果是()。

intb[][]={{1,1,1},{2,2},{3}};

intsum=0;

for(inti=0;i

for(intj=0;j

sum+=b[i][j];

}

}

System.out.println("sum="+sum);

A)10B)6C)9D)13

6、应用程序的main方法中有以下语句,则执行后输出的结果是()。

int[]x={125,21,5,168,98};

intmin=x[0];

for(inti=1;i

if(x[i]

min=x[i];

}

System.out.println(min);

A)125B)5C)98D)168

1.关于选择结构下列哪个说法正确?

 (  )

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

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

C.switch结构中每个case语句中必须用break语句

D.switch结构中必须有default语句

2.while循环和do…while循环的区别是:

  (  )

A.没有区别,这两个结构任何情况下效果一样

B.while循环比do…while循环执行效率高

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

D.do…while循环是先循环后判断,所以循环体至少被执行一次

4.下列修饰符中与访问控制无关的是 (  )

A.private   B.public

C.protectedD.final

5.void的含义:

  (  )

A.方法没有返回值   B.方法体为空

C.没有意义    D. 定义方法时必须使用

6.return语句:

  (  )

A.只能让方法返回数值    B.方法都必须含有

C.方法中可以有多句return  D.不能用来返回对象

7.关于对象成员占用内存的说法哪个正确?

  (  )

A.同一个类的对象共用同一段内存

B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间

C.对象的方法不占用内存

D.以上都不对

8.下列说法哪个正确?

A.不需要定义类,就能创建对象

B.对象中必须有属性和方法

C.属性可以是简单变量,也可以是一个对象

D、属性必须是简单变量

9.下列说法哪个正确?

  (  )

A、一个程序可以包含多个源文件

B、一个源文件中只能有一个类

C、一个源文件中可以有多个公共类

D、一个源文件只能供一个程序使用

10.关于方法main()的说法哪个正确?

(  )

A.方法main()只能放在公共类中

Bmain()的头定义可以根据情况任意更改

C.一个类中可以没有main()方法

D.所有对象的创建都必须放在main()方法中

11.构造函数何时被调用?

  (  )

A、创建对象时     B、类定义时

C、使用对象的方法时  D、使用对象的属性时

12. 抽象方法:

  (  )

A、可以有方法体

B、可以出现在非抽象类中

C、是没有方法体的方法

D、抽象类中的方法都是抽象方法 

13.关于继承的说法正确的是:

  (  )

A、子类将继承父类所有的属性和方法。

B、子类将继承父类的非私有属性和方法。

C、子类只继承父类public方法和属性

D、子类只继承父类的方法,而不继承属性

14.关于构造函数的说法哪个正确?

  (  )

A、一个类只能有一个构造函数

B、一个类可以有多个不同名的构造函数

C、构造函数与类同名

D、构造函数必须自己定义,不能使用父类的构造函数

15.this和super:

A、都可以用在main()方法中

B、都是指一个内存地址

C、不能用在main()方法中

D、意义相同

16.关于super的说法正确的是:

A、是指当前对象的内存地址

B、是指当前对象的父类对象的内存地址

C、是指当前对象的父类

D、可以用在main()方法中

17.覆盖与重载的关系是  (  )

A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中

B.覆盖方法可以不同名,而重载方法必须同名

C.final修饰的方法可以被覆盖,但不能被重载

D.覆盖与重载是同一回事

18.关于接口哪个正确?

  (  )

A、实现一个接口必须实现接口的所有方法

B.一个类只能实现一个接口

C.接口间不能有继承关系

D.接口和抽象类是同一回事

1.请说出下列代码的执行结果:

Strings="abcd";

Strings1=newString(s);

if(s==s1)System.out.println("thesame");

if(s.equals(s1))System.out.println("equals");

A. thesameequalsB. equals

C. thesameD. 什么结果都不输出

2.下列有关Java中接口的说法哪个是正确的?

A. 接口中含有具体方法的实现代码

B. 若一个类要实现一个接口,则用到“implements”关键字

C. 若一个类要实现一个接口,则用到“extends”关键字

D. 接口不允许继承

3.下列代码的执行结果是什么?

Strings1="aaa";

s1.concat("bbb");

System.out.println(s1);

A. Thestring"aaa".

B. Thestring"aaabbb".

C. Thestring"bbbaaa".

D. Thestring"bbb".

一.判断题

1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。

(√)

2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。

(×)

3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。

(×)

4.构造方法用于创建类的实例对象,构造方法名应与类名相同,返回类型为void。

(×)

6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。

(√)

8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。

(√)

9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。

(×)

二、填空题

1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。

2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。

3、设x=2,则表达式(x++)/3的值是0。

4、若x=5,y=10,则x=y的逻辑值分别为true和false。

5、抽象(abstract)方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。

最终(final)方法是不能被当前类的子类重新定义的方法。

6、创建一个名为MyPackage的包的语句是packageMyPackage;,

该语句应该放在程序的位置为:

应该在程序第一句。

7、设有数组定义:

intMyIntArray[]={10,20,30,40,50,60,70};则执行以下几个语句后的输出结果是120。

ints=0;

for(inti=0;i

if(i%2==1)

s+=MyIntArray[i];

System.out.println(s);

8、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。

1.定义类的保留字是(class),定义接口的保留字是(interface)。

4.构造方法是一种特殊的成员方法,构造方法名与(类名)相同。

5.Java语言只允许单继承,指每个类只能有一个(父类)。

6.Java源程序的扩展名是(.java),经过编译后的程序的扩展名是(.class)。

1、如果将类MyClass声明为public,它的文件名称必须是(MyClass.java)才能正常编译。

2、Java程序中的单行注释符是(//),多行注释符是(/**/)。

3、Java中布尔类型的常量有两种,它们是(true)和(false)。

4、Java中用于定义小数的关键字有两个:

(float)和(double),后者精度高于前者。

5、Java中用于两个数相等比较的运算符是:

(==),用于不相等比较的运算符是(!

=)。

6、在Java中定义一个字符串类型的变量str的语句是:

(St

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

当前位置:首页 > 经管营销 > 生产经营管理

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

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