Java题库.docx
- 文档编号:14747715
- 上传时间:2023-06-27
- 格式:DOCX
- 页数:115
- 大小:56.82KB
Java题库.docx
《Java题库.docx》由会员分享,可在线阅读,更多相关《Java题库.docx(115页珍藏版)》请在冰点文库上搜索。
Java题库
一、单项选择题(40道小题,共40分)
1、Java源文件中最多只能有一个()类,其他类的个数不限。
(1分)
A、abstractB、public
C、finalD、interface
2、下列哪个是合法的Java标识符()(1分)
A、Tree&GlassesB、FirstJavaApplet
C、*theLastOneD、
3、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为()。
(1分)
A、javaB、.class
C、htmlD、.exe
4、Java中()(1分)
A、一个子类可以有多个父类,一个父类也可以有多个子类B、一个子类可以有多个父类,但一个父类只可以有一个子类
C、一个子类可以有一个父类,但一个父类可以有多个子类D、上述说法都不对
5、关于构造方法以下说法错误的是()。
(1分)
A、构造方法名必须与类名一致B、构造方法可以重载
C、构造方法是通过new来调用D、每个类都必须编写构造方法代码
6、下列描述中,错误的是()(1分)
A、Java要求编程者管理内存B、Java的安全性体现在多个层次上
C、Applet程序要求在支持Java的浏览器上运行D、Java有多线程机制
7、下面说法不正确的是()(1分)
A、一个子类的对象可以接收父类对象能接收的消息;B、当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同;
C、父类比它的子类的方法更多;D、子类在构造函数中可以使用super()来调用父类的构造函数;
8、下面不是合法标识符的是()(1分)
A、2ofUSB、giveMes
C、whataQuizD、$d2000_
9、如定义数组inta[]={1,2,3};,操作正确的是()。
(1分)
A、a[3]=100B、a[0].length
C、a++D、
10、下面哪一个是合法的数组声明和构造语句()(1分)
A、int[]ages=[100];B、intages=newint[100];
C、int[]ages=newint[100];D、int()ages=newint(100);
11、整型数据类型中,需要内存空间最少的是()(1分)
A、shortB、long
C、intD、byte
12、下面关于数组声明和初始化的语句()有语法错误(1分)
A、inta1[]={3,4,5};B、Stringa2[]={"string1","string1","string1"};
C、Stringa3[]=newString(3);D、int[][]a4=newint[3][3];
13、publicclassfoo{publicstaticvoidmain(String[]args){Strings;"s="+s);}输出结果应该是:
()(1分)
A、代码得到编译,但捕获到NullPointException异常B、代码得到编译,并输出“s=”
C、代码得到编译,并输出“s=null”D、由于Strings没有初始化,代码不能编译通过
14、若a的值为3时,执行if(a>0)if(a>3)c=2;elsec=3;elsec=4;c的值是()(1分)
A、1B、2
C、3D、4
15、设有定义inti=123;longj=456;下面赋值不正确的语句是()。
(1分)
A、j=i;B、j=(long)i;
C、i=(int)j;D、i=j;
16、结构化程序设计所规定的三种基本控制结构是()(1分)
A、输入、处理、输出B、树形、网形、环形
C、顺序、选择、循环D、主程序、子程序、函数
17、下面哪一个循环会导致死循环()(1分)
A、for(intk=0;k<0;k++)B、for(intk=10;k>0;k--)
C、for(intk=0;k<10;k--)D、for(intk=0;k>0;k++)
18、在调用方法时,若要使方法改变实参的值,可以()(1分)
A、用基本数据类型作为参数B、用对象作为参数
C、A和B都对D、A和B都不对
19、设i、j、k为类X中定义的int型变量名,下列类X的构造函数中不正确的是()。
(1分)
A、x(intm){...}B、voidx(intm){...}
C、x(intm,intn){...}D、x(inth,intm,intn){...}
20、给出下面的代码publicclassParent{publicintaddValue(inta,intb){ints;s=a+b;returns;}}classChildextendsParent{}哪些方法可以加入类Child中(1分)
A、A.intaddValue(inta,intb){.}B、B.publicvoidaddValue(){.}
C、C.publicintaddValue(intb,inta){.}D、D.publicintaddValue(inta,intb)throwsException{.}
21、选项中()行代码可以替换题目中.returntrue;}
C、intx(){...returntrue;}D、intx(inta,b){returna+b;}
24、公有成员变量MAX_LENGTH是一个int型值,变量的值保持常数值100,定义这个变量的代码为()(1分)
A、publicintMAX_LENGTH=100;B、finalintMAX_LENGTH=100;
C、staticfinalintMAX_LENGTH=100;D、publicfinalintMAX_LENGTH=100;
25、假设在Java源程序文件“”中只含有一个类,而且这个类必须能够被位于一个庞大的软件系统中的所有Java类访问到,那么下面()声明有可能是符合要求的类声明。
(1分)
A、privateclassMyClassextendsObjectB、publicclassmyclassextendsObject
C、publicclassMyClassD、classMyClassextendsObject
26、下列方法头中哪一个不与其他方法形成重载(overload)关系()(1分)
A、voidmmm()B、voidmmm(inti)
C、voidmmm(Strings)D、intmm()
27、以下声明合法的是()(1分)
A、defaultStrings;B、publicfinalstaticintw()
C、abstractdoubled;D、abstractfinaldoublehyperbolicCosine()
28、定义有如下的方法:
abstractvoidperformDial();该方法属于()。
(1分)
A、接口方法B、最终方法
C、抽象方法D、空方法
29、类Parent、Child定义如下:
publicclassParent{publicfloataFun(floata,floatb)throwsIOException{}}publicclassChildextendsParent{Aa0=newA();2.Aa1=newB();3.Aa2=newC();问以下哪个说法是正确的()(1分)
A、只有第1行能通过编译B、第1、2行能通过编译,但第3行编译出错
C、第1、2、3行能通过编译,但第2、3行运行时出错D、第1行、第2行和第3行的声明都是正确的
31、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为()。
(1分)
A、Staticvoidmethod()B、publicvoidmethod()
C、finalvoidmethod()D、abstractvoidmethod()
32、下面哪个函数是publicvoidaMethod(){...}的重载函数()(1分)
A、voidaMethod(){...}B、publicintaMethod(){...}
C、publicvoidaMethod(){...}D、publicintaMethod(intm){...}
33、给出下面的不完整的类代码classPerson{Stringname,department;intage;publicPerson(Stringn){name=n;}publicPerson(Stringn,inta){name=n;age=a;}publicPerson(Stringn,Stringd,inta){.a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
import.*;
publicclasslianxi08{
publicstaticvoidmain(String[]args){
longa,b=0,sum=0;
Scanners=newScanner;
"输入数字a的值:
");
a=();
"输入相加的项数:
");
intn=();
inti=0;
{
b=b+a;
sum=sum+b;
++i;
}
}
}
(6分)
--------------------------------------------------------------------------------
2、*方法intsigmaDigit(intn)的功能是求出十进制整数n的各位数字之和。
例如,n=1234,该方法的返回值是10。
staticintsigmaDigit(intn)
{intsum=0,d;
while(n>0){
d=n%10;
n/=10;
}
}
(6分)
--------------------------------------------------------------------------------
3、*方法intsigmaEvenNum(int[]a)的功能是求已知数组中偶数的个数。
staticintsigmaEvenNum(inta[]){
ints=0;
{
s++;
}
returns;
}
(6分)
--------------------------------------------------------------------------------
4、*编写一个方法halfArray(),要求该方法有一个元素类型为int的数组参数,方法返回一个新数组。
*新数组的长度与参数数组的长度相同,而新数组元素的值是参数数组各元素的一半。
int[]halfArray(int[]inputArray){
for{inti=0;i<;i++}{
}
returnoutputArray;
}
(6分)
--------------------------------------------------------------------------------
5、*以下定义的类shareDataManager用于管理多个线程共享数据data。
一些线程要减少data,另一些线程要增加data。
*由于data不可以是负值,修改data的方法对这些线程来说不仅要互斥,还要同步。
类提供一个方法modiData()供修改data的线程调用,该方法在data修改结束后,应通知其它等待进入这个方法的线程。
classShareDataManager{
intdata=0;
if(delta>=0){
data+=delta;
}else{
while(data<delta){
try{发生等待!
");
wait();
}catch(InterruptedExceptione){}
}
data-=delta;
}
}
ShareDataManager(intititData){data=initData;}
}
(6分)
--------------------------------------------------------------------------------
四、编程题(2道小题,共20分)
1、编写Complex类并测试其功能:
1.复数包括实部(Real)和虚部(Imaginary)两部分;
2.定义构造函数,在构造对象的同时为对象赋值;
3.提供add方法计算两个复数的和;
4.重载toString,使得Complex类的对象能够显示自身信息;
5.并用main方法测试程序。
(10分)
必须将本题程序最后的运行结果填入下面的框中。
否则,该题以零分计!
请将你解答本题所写的源程序粘贴到下面或者上载源程序
--------------------------------------------------------------------------------
2、实现程序:
用字符流实现不断从键盘输入数据,并显示在屏幕上,直到用户输入"e"退出程序。
(10分)
必须将本题程序最后的运行结果填入下面的框中。
否则,该题以零分计!
请将你解答本题所写的源程序粘贴到下面或者上载源程序
--------------------------------------------------------------------------------
1、面向对象的三大特性,不包括如下()。
(1分)
A、异常B、封装
C、继承D、多态
2、()是构成Java程序的基本单位(1分)
A、方法B、类
C、对象D、main方法
3、下面()行代码正确的声明了一个类方法(静态方法)(1分)
A、publicintmethod(inti)B、protectedmethod(inti)
C、publicstaticmethod(Strings)D、protectedstaticvoidmethod(Integeri)
4、编译Java程序的命令是()(1分)
A、appletviewerB、javac
C、javaD、javadoc
5、下面说法不正确的是()(1分)
A、一个子类的对象可以接收父类对象能接收的消息;B、当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同;
C、父类比它的子类的方法更多;D、子类在构造函数中可以使用super()来调用父类的构造函数;
6、Java语言的许多特点中,下列()特点是C++语言所不具备的。
(1分)
A、高性能B、跨平台
C、面向对象D、有类库
7、一个可以独立运行的Java应用程序()(1分)
A、可以有一个或多个main()方法B、最多只能有两个main()方法
C、可以有一个或零个main()方法D、只能有一个main()方法
8、如定义二维数组inta[][]={{1,2},{3}};操作错误的是()。
(1分)
A、a[0][1]=200B、a[0].length
C、a[1][1]=100D、
9、执行语句inti=1,j=++i;后i与j的值分别为()。
(1分)
A、1与1B、2与1
C、1与2D、2与2
10、下面()操作符的优先级最高(1分)
A、&&B、||
C、!
D、()
11、关于Java字符串说法错误的是()。
(1分)
A、Java中的字符串是常量B、Java中的字符串不是对象
C、Java中的字符串存储在常量池中D、一个字符串定义后的长度不可变
12、下面的哪些赋值语句是错的()(1分)
A、floatf=;B、doubled=;
C、doubled=;D、doubled=;
13、给出下面的代码Strings="hello";Stringt="hello";charc[]={'h','e','l','l','o'};下列选项里()返回false。
(1分)
A、(t);B、(c);
C、s==t;D、(newString("hello"));
14、下面关于方法的说法,错误的是()。
(1分)
A、Java中的方法参数传递时传值调用,而不是地址调用B、方法体是对方法的实现,包括变量声明和Java的合法语句
C、如果程序定义了一个或多个构造方法,在创建对象时,也可以用系统自动生成空的构造方法D、类的私有方法不能被其子类直接访问
15、设有定义inti=123;longj=456;下面赋值不正确的语句是()。
(1分)
A、j=i;B、j=(long)i;
C、i=(int)j;D、i=j;
16、以下语句有语法错的是:
()(1分)
A、intx=1;y=2;z=3;B、for(intx=10,y=0;x>0;x++){...}
C、while(x>5){...};D、for(;){...};
17、inttotal=0;for(inti=0;i<4;i++){if(i==1)continue;if(i==2)break;total+=i;}则执行完该程序段后total的值为()。
(1分)
A、0B、1
C、3D、6
18、以下有关类的继承的叙述中,正确的是()(1分)
A、子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B、子类只能继承父类的方法,不能继承父类的属性
C、子类只能继承父类的非私有属性,不能继承父类的方法D、子类不能继承父类的私有属性
19、设i、j、k为类X中定义的int型变量名,下列类X的构造函数中不正确的是()。
(1分)
A、x(intm){...}B、voidx(intm){...}
C、x(intm,intn){...}D、x(inth,intm,intn){...}
20、ReturnTypemethod(bytex,doubley){return(short)x/y*2;},请选择该方法的ReturnType类型()。
(1分)
A、byteB、short
C、intD、double
21、Javaapplication中的主类需包含main方法,main方法的返回类型是什么()(1分)
A、intB、float
C、可以自己定义返回值类型D、void
22、下列关于构造方法的叙述中,错误的是()(1分)
A、Java语言规定构造方法名与类名必须相同B、Java语言规定构造方法没有返回值,但不用void声明
C、Java语言规定构造方法不可以重载D、Java语言规定构造方法只能通过new自动调用
23、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的()classA{inti;staticStrings;voidmethod1(){}staticvoidmethod2(){}}(1分)
A、;B、();
C、();D、()
24、在调用方法时,若要使方法改变实参的值,可以()(1分)
A、用基本数据类型作为参数B、用对象作为参数
C、A和B都对D、A和B都不对
25、给出下面的代码classPerson{Stringname,department;publicvoidprintValue(){"nameis"+name);"departmentis"+department);}}publicclassTeacherextendsPerson{intsalary;publicvoidprintValue(){.}的重载函数()(1分)
A、voidaMethod(){...}B、publicintaMethod(){...}
C、publicvoidaMethod(){...}D、publicintaMethod(intm){...}
31、在Java中用()关键字修饰的方法可以直接通过类名来调用(1分)
A、staticB、final
C、privateD、void
32、在使用interface声明一个接口时,只可以使用()修饰符修饰该接口(1分)
A、privateB、protected
C、publicD、static
33、关键字supper的作用是()(1分)
A、用来访问父类被隐藏的成员变量B、用来调用父类中被重载的方法
C、用来调用父类的构造函数D、以上都是
34、字符流与字节流的区别是()(1分)
A、每次读入的字节数不同B、前者带有缓冲,后者没有
C、前者是字符读写,后者是字节读写D、二者没有区别,可以互换使用
35、有如下代码段:
1)2){if(unsafe()){lass为后缀的字节码文件(1分)
正确错误
3、当整型变量n的值不能被1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 题库
![提示](https://static.bingdoc.com/images/bang_tan.gif)