Java题库.docx
- 文档编号:28241327
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:176
- 大小:86.26KB
Java题库.docx
《Java题库.docx》由会员分享,可在线阅读,更多相关《Java题库.docx(176页珍藏版)》请在冰豆网上搜索。
Java题库
一、单项选择题〔40道小题,共40分〕
1、Java源文件中最多只能有一个〔〕类,其他类的个数不限。
〔1分〕
A、abstractB、public
C、finalD、interface
2、以下哪个是合法的Java标识符?
〔〕〔1分〕
A、Tree&GlassesB、FirstJavaApplet
C、*theLastOneD、273.5
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、a.length
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;System.out.println("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){//dosomething...}B、B.publicvoidaddValue(){//dosomething...}
C、C.publicintaddValue(intb,inta){//dosomething...}D、D.publicintaddValue(inta,intb)throwsException{//dosomething...}
21、选项中〔〕行代码可以替换题目中//addcodehere而不产生编译错误?
publicabstractclassMyClass{publicintconstInt=5;//addcodeherepublicvoidmethod(){}}〔1分〕
A、publicabstractvoidmethod(inta);B、value=value+5;
C、publicintmethod();D、publicabstractvoidanotherMethod(){}
22、下面关于变量及其范围的陈述哪些是错误的()〔1分〕
A、实例变量是类的成员变量B、实例变量用关键字static声明
C、在方法中定义的局部变量在该方法被执行时创建D、局部变量在使用前必须被初始化。
23、以下方法定义中,正确的选项是()。
〔1分〕
A、intx(){charch='a';return(int)ch;}B、voidx(){...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源程序文件“MyClass.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{//插入行}将以下〔〕插入行是合法的。
〔1分〕
A、floataFun(floata,floatb){}B、publicintaFun(inta,intb)throwsException{}
C、publicfloataFun(floatp,floatq){}D、publicfloataFun(inta,intb)throwsIOException{}
30、A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明:
1.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){//完成Person(Stringn,inta)的逻辑department=d;}}下面的哪些表达式可以加到构造方法中的注释处〔〕〔1分〕
A、Person(n,a);B、this(Person(n,a));
C、this(n,a);D、this(name,age);
34、java程序段中用来抛出异常的关键字是〔〕。
〔1分〕
A、tryB、catch
C、throwD、throws
35、下面的代码片段实现的是什么功能?
()Filefile=newFile("C:
\\test.dat");if(file.exists()){file.delete();}〔1分〕
A、创建C:
\test.datB、删除C:
\test.dat
C、打开C:
\test.dat文件输出流。
D、移动C:
\test.dat
36、getCustomerInfo()方法如下,try中可以捕获三种类型的异常,如果在该方法运行中产生了一个IOException,将会输出〔〕publicvoidgetCustomerInfo(){try{//dosomethingthatmaycauseanException}catch(java.io.FileNotFoundExceptionex){System.out.print("FileNotFoundException!
");}catch(java.io.IOExceptionex){System.out.print("IOException!
");}catch(java.lang.Exceptionex){System.out.print("Exception!
");}}〔1分〕
A、IOException!
B、IOException!
Exception!
C、FileNotFoundException!
IOException!
D、FileNotFoundException!
IOException!
Exception!
37、要从文件"file.dat"中读出第10个字节到变量c中,以下〔〕方法适合。
〔1分〕
A、FileInputStreamin=newFileInputStream("file.dat");in.skip(9);intc=in.read();B、FileInputStreamin=newFileInputStream("file.dat");in.skip(10);intc=in.read();
C、FileInputStreamin=newFileInputStream("file.dat");intc=in.read();D、RandomAccessFilein=newRandomAccessFile("file.dat");in.skip(9);intc=in.readByte();
38、字符流与字节流的区别是〔〕〔1分〕
A、每次读入的字节数不同B、前者带有缓冲,后者没有
C、前者是字符读写,后者是字节读写D、二者没有区别,可以互换使用
39、以下哪个方法用于定义线程的执行体?
〔〕〔1分〕
A、start()B、init()
C、run()D、synchronized()
40、当某一线程正处于休眠状态,而另一个线程用Thread类中的interrupt()方法中断它时,抛出的异常类型是〔〕〔1分〕
A、IOExceptionB、RuntimeException
C、InterruptedExceptionD、ClassNotFoundException
二、判断题〔10道小题,共10分〕
1、垃圾收集的过程在Java程序的生存期中式自动的,不需要分配和释放内存,也防止了内存泄露。
〔1分〕
正确错误
2、Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象〔1分〕
正确错误
3、switch语句中可以没有default子句。
〔1分〕
正确错误
4、在Java语言中,所有的数组都有一个lenght属性,这个属性存储了该数组的元素个数。
〔1分〕
正确错误
5、类就是所有具有一定共性的对象的抽象描述。
〔1分〕
正确错误
6、在构造方法中如调用super()语句,则必须使其成为构造方法中的第一条语句。
〔1分〕
正确错误
7、在Java中,关键字final修饰一个类后,该类就不能派生出子类。
〔1分〕
正确错误
8、尽管一个类没有抽象方法,该类仍然可以声明成抽象的。
〔1分〕
正确错误
9、异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。
〔1分〕
正确错误
10、调用sleep()方法可以使一个线程停止运行。
〔1分〕
正确错误
三、填空题〔5道小题,共30分〕
1、*求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
importjava.util.*;
publicclasslianxi08{
publicstaticvoidmain(String[]args){
longa,b=0,sum=0;
Scanners=newScanner(System.in);
System.out.print("输入数字a的值:
");
a=s.nextInt();
System.out.print("输入相加的项数:
");
intn=s.nextInt();
inti=0;
{
b=b+a;
sum=sum+b;
++i;
}
System.out.println(sum);
}
}
〔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 } 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{System.out.println("发生等待! "); wait(); }catch(InterruptedExceptione){} } data-=delta; } } ShareDataManager(intititData){data=initData;} } 〔6分〕 -------------------------------------------------------------------------------- 四、编程题〔2道小题,共20分〕 1、编写Complex类并测试其功能: 〔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
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 题库