java.docx

上传人:b****3 文档编号:3457018 上传时间:2022-11-23 格式:DOCX 页数:65 大小:80.91KB
下载 相关 举报
java.docx_第1页
第1页 / 共65页
java.docx_第2页
第2页 / 共65页
java.docx_第3页
第3页 / 共65页
java.docx_第4页
第4页 / 共65页
java.docx_第5页
第5页 / 共65页
点击查看更多>>
下载资源
资源描述

java.docx

《java.docx》由会员分享,可在线阅读,更多相关《java.docx(65页珍藏版)》请在冰豆网上搜索。

java.docx

java

第1章

一、选择题

1.下列选项中,不属于Java语言特点的一项是(C)。

(A)分布式(B)安全性

(C)编译执行(D)面向对象

【解析】Java程序采用解释执行的方法。

在系统编译运行Java程序时,Java编译器将Java程序转化为字节码,在运行时,解释器将编译得到的字节码进行解释执行。

2.在Java语言中,(C)是最基本的元素?

(A)方法(B)包

(C)对象(D)接口

【解析】构成Java程序的基本元素类(抽象的对象)。

3.编译一个定义了3个类和10个方法的Java源文件后,会产生(D)个字节码文件?

扩展名是(D)?

(A)13个字节码文件,扩展名为.class(B)1个字节码文件,扩展名为.class

(C)3个字节码文件,扩展名为.java(D)3个字节码文件,扩展名为.class

【解析】源文件中的每一个类编译后都会生成一个字节码文件,字节码文件的扩展名是.class。

4.在创建Applet应用程序时,需要用户考虑问题是(B)。

(A)窗口如何创建(B)绘制的图形在窗口中的位置

(C)程序的框架(D)事件处理

【解析】创建Applet程序时必须继承系统类Applet,而Applet类中已经包含了如何创建窗口以及事件处理等内容,这类程序的框架也都是固定的,而绘制图形在窗口中的位置则需要由用户确定。

5.Java语言属于(B)种语言?

(A)面向机器的语言(B)面向对象的语言

(C)面向过程的语言(D)面向操作系统的语言

【解析】Java语言是一种纯面向对象的语言。

6.下列关于Application和Applet程序的说法中不正确的一项是(B)。

(A)Application使用解释器java.exe(B)Application不使用独立的解释器

(C)Applet在浏览器中运行(D)Applet必须继承Java的Applet类

【解析】Application程序包含main()方法,它是一种独立执行的程序,因此必须使用独立的解释器解释执行。

7.下列选项中,不属于Java核心包的一项是(A)。

(A)javax.swing(B)java.io

(C)java.utile(D)java.lang

【解析】凡是以java开头的包都是Java核心包,以javax开头的包则属于Java扩展包。

8.下列描述中,不正确的是(A)。

(A)不支持多线程(B)一个Java源文件不允许有多个公共类

(C)Java通过接口支持多重继承(D)Java程序分为Application和Applet两类

【解析】Java是支持多线程的语言。

9.阅读下列代码,选出该代码段正确的文件名(C)。

classA{

voidmethod1(){

System.out.println("Method1inclassA");

}

}

publicclassB{

voidmethod2(){

System.out.println("Method2inclassB");

}

publicstaticvoidmain(String[]args){

System.out.println("main()inclassB");

}

}

(A)A.java(B)A.class

(C)B.java(D)B.class

【解析】Java源文件名必须和公共类的名字完全一样,源文件的扩展名为.java。

10.编译下面源程序会得到哪些文件(D)?

classA1{

}

classA2{

}

publicclassB{

publicstaticvoidmain(String[]args){

}

}

(A)只有B.class文件(B)只有A1.class和A2.class文件

(C)编译不成功(D)A1.class、A2.class和B.class文件

【解析】由于该程序包含3个类,每个类编译后都会生成1个字节码文件,因此编译后会生成以这3个类名命名的字节码文件。

第2章

一、选择题

1.下列(D)是合法的标识符?

(A)12class(B)void(C)-5(D)_blank

【解析】根据Java标识符的构成规则确定。

2.下列(B)不是Java中的保留字?

(A)if(B)sizeof(C)private(D)null

【解析】根据Java保留字表进行选择。

3.下列(C)不是合法的标识符?

(A)$million(B)$_million(C)2$_million(D)$2_million

【解析】根据Java标识符的构成规则确定。

4.下列选项中,(B)不属于Java语言的基本数据类型?

(A)整数型(B)数组(C)浮点型(D)字符型

【解析】根据Java语言的基本数据类型包含的类别选取。

5.下列关于基本数据类型的说法中,不正确的一项是(D)。

(A)boolean类型变量的值只能取真或假

(B)float是带符号的32位浮点数

(C)double是带符号的64位浮点数

(D)char是8位Unicode字符

【解析】Java中的字符采用的是16位的Unicode字符。

6.下列关于基本数据类型的取值范围的描述中,正确的一个是(B)。

(A)byte类型的取值范围是-128~128(B)boolean类型的取值范围是真或假

(C)char类型的取值范围是0~65536(D)short类型的取值范围是-32767~32767

【解析】根据每种类型占几个字节即可推算出其取值范围,如byte类型占1个字节,即共包含28个数值,其取值范围范围应为-128~127,其他类型也是如此。

7.下列关于Java语言简单数据类型的说法中,正确的一项是(A)。

(A)以0开头的整数代表8进制整型常量

(B)以0x或0X开头的整数代表8进制整型常量

(C)boolean类型的数据作为类成员变量的时候,相同默认的初始值为true

(D)double类型的数据占计算机存储的32位

【解析】根据每种数据类型的特性进行判断。

8.下列Java语句中,不正确的一项是(C)。

(A)$e,a,b=10;(B)charc,d=‘a’;

(C)floate=0.0d;(D)doublec=0.0f;

【解析】不能将double类型的常量赋值给float类型的变量。

9.在编写Java程序时,如果不为类的成员变量定义初始值,Java会给出它们的默认值,下列说法中不正确的一个是(D)。

(A)byte的默认值是0(B)boolean的默认值是false

(C)char类型的默认值是’\0’(D)long类型的默认值是0.0L

【解析】long类型的默认值是0L,而不是0.0L。

10.下列语句中不正确的一个是(B)。

(A)floatf=1.1f;(B)byteb=128;

(C)doubled=1.1/0.0;(D)charc=(char)1.1f;

【解析】bytel类型变量的取值范围是-128~127。

11.下列表达式1+2+"aa"+3的值是(B)。

(A)"12aa3"(B)"3aa3"(C)"12aa"(D)"aa3"

【解析】整数和整数相加得到两个整数的和,而整数和字符串相加得到的是字符串。

12.已知y=2,z=3,n=4,则经过n=n+-y*z/n运算后n的值为(A)。

(A)3(B)-1(C)-12(D)-3

【解析】根据运算符的优先级,该表达式相当于n=n+((-y)*z)/n。

13.已知a=2,b=3,则表达式a%b*4%b的值为(A)。

(A)2(B)1(C)-1(D)-2

【解析】根据运算符的优先级,该表达式相当于((a%b)*4)%b。

14.已知x=2,y=3,z=4,则经过z-=--y–x--运算后,z的值为(D)。

(A)1(B)2(C)3(D)4

【解析】在表达式运算过程中,--y的值变为2,x—的值还是2,等号右侧运算后的值为0,因此z的值没有变化。

15.表达式(12==0)&&(1/0<1)的值为(B)。

(A)true(B)false(C)0(D)运行时抛出异常

【解析】由于(12==0)的值为false,因此整个表达式发生短路运算,即(1/0<1)就没有参与运算,整个表达式的值为false。

16.设有类型定义shorti=32;longj=64;下面赋值语句中不正确的一个是(B)

(A)j=i;(B)i=j;(C)i=(short)j;(D)j=(long)i;

【解析】long类型的数据不能自动转变为short类型,因此不能将long类型的变量直接赋值给short类型。

17.现有1个char类型的变量c1=66和1个整型变量i=2,当执行c1=c1+(char)i;语句后,c1的值为(D)。

(A)'d'(B)'D'(C)68(D)语句在编译时出错

【解析】两个字符型的数据相加,得到的是一个整数,而如果把整数再赋值给一个字符型变量则会在编译时出错。

18.下列说法中,正确的一项是(D)。

(A)字符串"\\abcd"的长度为6(B)False是Java的保留字

(C)123.45L代表单精度浮点型(D)False是合法的Java标识符

【解析】Java语言对字符的大小写是敏感的,False不是false,因此False是合法的Java标识符。

19.以下的变量定义语句中,合法的是(D)

(A)float_*5=123.456F;(B)byte$_b1=12345;

(C)int_long_=123456L;(D)doubled=Double.MAX_VALUE;

【解析】(A)中_*5不是合法的标识符,(B)中12345超出byte范围,(C)中不能将long类型的常量赋值给int型的变量。

20.下列关于运算符优先级的说法中,不正确的一个是(C)

(A)运算符按照优先级顺序表进行运算

(B)同一优先级的运算符在表达式中都是按照从左到右的顺序进行运算的

(C)同一优先级的运算符在表达式中都是按照从右到左的顺序进行运算的

(D)括号可以改变运算的优先次序

【解析】同一优先级的运算符在表达式中都是按照从左到右的顺序进行运算的。

21.给出下面程序代码:

byte[]a1,a2[];

bytea3[][];

byte[][]a4;

下列数组操作语句中哪一个是不正确的?

(A)

A.a2=a1B.a2=a3C.a2=a4D.a3=a4

【解析】只有维数相同的数组才能相互赋值。

22.关于数组,下列说法中不正确的是(C)。

A.数组是最简单的复合数据类型,是一系列数据的集合

B.数组元素可以是基本数据类型、对象或其他数组

C.定义数组时必须分配内存

D.一个数组中所有元素都必须具有相同的数据类型

【解析】数组元素可以是基本数据类型、对象或其他数组。

23.设有下列数组定义语句:

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

则对此语句的叙述错误的是(C)。

A.定义了一个名为a的一维数组B.a数组有3个元素

C.a数组元素的下标为1~3D.数组中每个元素的类型都是整数

【解析】数组元素的下标是从0开始的。

24.执行语句:

int[]x=newint[20];后,下面哪个说法是正确的?

(C)

A.x[19]为空B.x[19]未定义C.x[19]为0D.x[0]为空

【解析】此语句定义了x数组后,x[0]~x[19]的值全部为0。

25.已知有定义:

Strings="Ilove",下面哪个表达式正确?

(A)

A.s+="you";B.charc=s[1];

C.intlen=s.length;D.Strings=s.toLowerCase();

【解析】字符串对象可以执行“+=”运算,但不能用s[1]这种方式取其中的字符,也不能用length求它的长度,可以用length()求其长度,因此B、C不正确,不能再次定义s字符串,因此D不正确。

第3章

一、选择题

1.下列(D)不属于Java语言流程控制结构?

(A)分支语句(B)跳转语句(C)循环语句(D)赋值语句

【解析】Java语言流程控制结构只包括分支、循环和跳转三种语句。

2.假设a是int类型的变量,并初始化为1,则下列(D)是合法的条件语句?

(A)if(a){}(B)if(a<<=3){}(C)if(a=2){}(D)if(true){}

【解析】条件语句中的“条件表达式”只能是boolean类型,不能是其他类型。

3.下列说法中,不正确的一个是(C)。

(A)switch语句的功能可以由if…elseif语句来实现

(B)若用于比较的数据类型为double型,则不可以用switch语句来实现

(C)if…elseif语句的执行效率总是比switch语句高

(D)case子句中可以有多个语句,并且不需要大括号{}括起来

【解析】语句的执行效率高低要根据具体语句来确定,不能简单地说if…elseif语句的执行效率总是比switch语句高。

4.设a、b为long型变量,x、y为float型变量,ch为char类型变量且它们均已被赋值,则下列语句中正确的是(B)。

(A)switch(x+y){}(B)switch(ch+1){}

(C)switchch{}(D)switch(a+b);{}

【解析】switch后面的表达式必须放在括号()中,且表达式的类型只能是byte、short、int和char类型,不能是其他类型。

5.下列循环体执行的次数是(C)。

inty=2,x=4;

while(--x!

=x/y){}

(A)1(B)2(C)3(D)4

【解析】第1次执行while时,--x的值为3,3/2=1,满足等号两端值不等的条件,执行一次循环体;第2次执行while时,--x的值为2,2/2=1,条件满足,又执行一次循环体;第3次执行while时,--x的值为1,1/2=0,条件满足,再次执行一次循环体;第4次执行while时,--x的值为0,0/2=0,条件不满足满足,结束循环。

因此在这个循环语句执行的过程中,循环体共执行了3次。

6.下列循环体执行的次数是(B)。

intx=10,y=30;

do{y-=x;x++;}while(x++

(A)1(B)2(C)3(D)4

【解析】执行1次循环体后,y的值为20,x值为11,然后执行while,此时x++的值为11,y—的值为20,因此x++

因此在这个循环语句执行的过程中,循环体共执行了2次。

7.已知如下代码:

switch(m){

case0:

System.out.println("Condition0");

case1:

System.out.println("Condition1");

case2:

System.out.println("Condition2");

case3:

System.out.println("Condition3");break;

default:

System.out.println("OtherCondition");

}

当m的值为(D)时,输出“Condition3”

(A)2(B)0、1(C)0、1、2(D)0、1、2、3

【解析】当m的值为0、1、2、3时,都能输出“Condition3”,因为case0、case1、case2后面的语句都没有break,因此可以继续向后执行。

第4章

一、选择题

1.下列哪种类成员修饰符修饰的变量只能在本类中被访问?

(D)

(A)protected(B)public(C)default(D)private

【解析】只有私有访问权限修饰符才能限制变量只能在本类中被访问。

2.在Java语言中,哪一个包中的类是自动导入的?

(A)

A)java.langB)java.awtC)java.ioD)java.applet

【解析】只有java.lang包中的类能够被自动导入。

3.给出下面的程序代码:

publicclassX4_1_3{

privatefloata;

publicstaticvoidm(){}

}

如何使成员变量a被方法m()访问(C)

(A)将privatefloata改为protectedfloata(B)将privatefloata改为publicfloata

(C)将privatefloata改为staticfloata(D)将privatefloata改为floata

【解析】static类型的方法只能访问static类型的数据成员。

4.有一个类B,下面为其构造方法的声明,正确的是(B)。

(A)voidB(intx){}(B)B(intx){}

(C)b(intx){}(D)voidb(intx){}

【解析】构造方法没有类型,且方法名与类名相同。

5.下面关于类的说法,不正确的是(C)。

(A)类是同种对象的集合和抽象(B)类属于Java语言中的复合数据类型

(C)类就是对象(D)对象是Java语言中的基本结构单位

【解析】类是对象的抽象,对象是类的实例,因此类和对象是有区别的。

6.下面关于方法的说法,不正确的是(C)。

(A)Java中的构造方法名必须和类名相同

(B)方法体是对方法的实现,包括变量声明和合法语句

(C)如果一个类定义了构造方法,也可以用该类的默认构造方法

(D)类的私有方法不能被其他类直接访问

【解析】类中一旦用户定义了构造方法,该类默认的构造方法就不存在了,除非用户再自定义该类的默认构造方法。

7.关于内部类,下列说法不正确的是(A)。

(A)内部类不能有自己的成员方法和成员变量

(B)内部类可用private或protected修饰符修饰

(C)内部类可以作为其他类的成员,而且可访问它所在的类的成员

(D)除static内部类外,不能在类内声明static成员

【解析】内部类也可以有自己的成员方法和变量。

8.定义外部类时不能用到的关键字是(C)。

(A)final(B)public(C)protected(D)abstract

【解析】定义外部类不能使用protected修饰符。

9.为AB类定义一个无返回值的方法f,使得使用类名就可以访问该方法,该方法头的形式为(D)

(A)abstractvoidf()(B)publicvoidf()

(C)finalvoidf()(D)staticvoidf()

【解析】只有static类型的方法才可以直接使用类名来引用。

10.定义一个公有double型常量PI,哪一条语句最好?

(B)

(A)publicfinaldoublePI;(B)publicfinalstaticdoublePI=3.14;

(C)publicfinalstaticdoublePI;(D)publicstaticdoublePI=3.14;

【解析】用publicfinalstatic来定义常量,既可以节省存储空间,又可以保证数值不会被改变。

第5、6章

一、选择题

1.已知有下面类的说明:

publicclassX5_1_1extendsx{

privatefloatf=10.6f;

inti=16;

staticintsi=10;

publicstaticvoidmain(String[]args){

X5_1_1x=newX5_1_1();

}

}

在main()方法中,下面哪条语句的用法是正确的?

(A)

A.x.fB.this.siC.X5_1_1.iD.X5_1_1.f

【解析】由于x是在main方法内部定义的对象,因此它可以引用类的非static类型的属性,因此选A,而this和super不能在main方法中使用,使用类名只能引用本类的静态属性,因此B、C、D不对。

2.下列程序的运行结果是(C)。

publicclassX5_1_2extendsx{

intab(){

staticintaa=10;

aa++;

System.out.println(aa);

}

publicstaticvoidmain(String[]args){

X5_1_2x=newX5_1_2();

x.ab();

}

}

A.10B.11

C.编译错误D.运行成功,但不输出

【解析】方法体内的局部变量不能使用static修饰符。

3.下面关于接口的说法中不正确的是(C)。

A.接口中所有的方法都是抽象的

B.接口中所有的方法都是public访问权限

C.子接口继承父接口所用的关键字是implements

D.接口是Java中的特殊类,包含常量和抽象方法

【解析】子接口继承父接口所用的关键字也是extends,只有类实现接口时才使用implements。

4.区分类中重载方法的依据是(A)。

A.形参列表的类型和顺序B.不同的形参名称

C.返回值的类型不同D.访问权限不同

【解析】形参表的类型和顺序不同时区分重载方法的唯一标志。

5.子类对象能否直接向其父类赋值?

父类对象能否向其子类赋值?

(B)

A.能,能B.能,不能C.不能,能D.不能,不能

【解析】子类对象可以直接赋值给父类对象,而父类对象不能直接赋值给子类对象。

6.Java语言类间的继承关系是(A)。

A.单继承B.多重继承C.不能继承D.不一定

【解析】Java语言类间的继承关系是单继承,但一个类可以实现多个接口。

7.Java

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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