Java程序设计模拟试题三.docx
《Java程序设计模拟试题三.docx》由会员分享,可在线阅读,更多相关《Java程序设计模拟试题三.docx(20页珍藏版)》请在冰豆网上搜索。
Java程序设计模拟试题三
《Java程序设计》模拟试题三
得分
评卷人
一、单项选择题(每小题1分,共50分)
(每一道试题下面有A、B、C、D四个备选答案,请从中选择一个最佳答案,并在“答题卡”上将相应题号的字母涂黑,以示正确答案。
)
1.下列哪个选项不是Java语言的注释符号_________。
()
(A)//(B)/**/
(C)/***/(D)!
2.编译Java程序的命令是_________。
()
(A)java(B)javadoc
(C)javac(D)cd
3.面向对象程序设计的显著特征不包括_________。
()
(A)封装抽象性(B)多态性(C)继承性(D)安全性
4.下面的选项中,哪一项不适宜作为“飞机”类的成员方法_________。
()
(A)起飞(B)降落(C)速度(D)加速
5.在UML中定义了5种关系,其中,如果两个事物是整体和部分的关系,在UML中称之为_________关系。
()
(A)依赖(B)关联(C)聚集(D)泛化
6.下列哪项是Java的转义字符_________。
()
(A)|t(B)!
r(C)\b(D)&n
7.以下程序的输出结果为________。
()
publicclassAppTest{
publicstaticvoidmain(Stringargs[]){
inti=10,j=5;
intm=i>j?
i:
j;
System.out.println("m="+m);
}
}
(A)m=10(B)m=5(C)m=15(D)m=true
8.下列说法正确的是_________。
()
(A)(B)
(C)(D)
9.设inta=15,则运行a+=a运算后,a的值是_________。
()
(A)0(B)15(C)225(D)30
10.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为_________。
()
(A)staticvoidmethod()(B)publicvoidmethod()
(C)finalvoidmethod()(D)abstractoidmethod()
11.在以下程序中,显示的数字一共有_________个。
()
inti;
for(i=0;i<10;i++){
if(i%2==0)
continue;
System.out.println(i);
}
(A)10(B)11(C)5(D)4
12.Java是一种_________程序设计语言。
()
(A)基于对象(B)面向对象
(C)面向模板(D)基于模板
13.MAX_LENGTH是int型public成员变量,变量值保持为常量100,用简短语句定义这个变量____。
()
(A)publicintMAX_LENGTH=100(B)finalintMAX_LENGTH=100
(C)finalpublicintMAX_LENGTH=100(D)publicfinalintMAX_LENGTH=100
14.System类在哪个包中_________。
()
(A)(B)(C)(D)
15.下列说法正确的是_________。
()
(A)java语言里的线程是无所谓优先级的
(B)
(C)java语言中方法变量在方法执行时创建
(D)
16.构造BufferedInputStream的合适参数是哪个_________。
()
(A)BufferedOutputStream(B)FileInputStream
(C)FileOuterStream(D)SockectInputStream
17.paint()方法使用哪种类型的参数_________。
()
(A)Graphics(B)Graphics2D(C)String(D)Color
18.假设有Stringa="A";charb='A';intc=65,下面选项中_________是正确的。
()
(A)if(a==b){System.out.print("Equal")}
(B)if(c==b){System.out.print("Equal")}
(C)if(a==c){System.out.print("Equal")}
(D)if(c=b){System.out.print("Equal")}
19.下列关于内存回收的说明哪个语句是正确的_________。
()
(A)程序员必须创建一个线程来释放内存
(B)内存回收程序负责释放无用内存
(C)内存回收程序允许程序员直接释放内存
(D)内存回收程序可以在指定的时间释放内存对象
20.给出下面代码,那个选项是正确的?
_________。
()
publicclasstest{
staticinta[]=newint[10];
publicstaticvoidmain(Stringargs[]){
System.out.println(a[10]);
}
}
(A)编译时将产生错误(B)编译时正确,运行时将产生错误
(C)输出零(D)输出空
21.关于awt和swing说法正确的是_________。
()
(A)awt在不同操作系统中显示相同的风格
(B)swing在不同的操作系统中显示不相同的风格
(C)awt是swing的子类
(D)awt和swing都支持事件模型
22.执行代码String[]s=newString[10]后,哪个结论是正确的_________。
()
(A)s[10]为"";(B)s[9]为null;(C)s[0]为未定义(D)
23.下面哪个方法可以在任何时候被任何线程调用_________。
()
(A)notify()(B)wait()(C)notifyAll()(D)sleep()
24.给出下面代码段,哪行将引起一个编译时错误_________。
()
1)publicclassTest{
2)intm,n;
3)publicTest(){}
4)publicTest(inta){m=a;}
5)publicstaticvoidmain(Stringarg[]){
6)Testt1,t2;
7)intj,k;
8)j=0;k=0;
9)t1=newTest();
10)t2=newTest(j,k);
11)}
12)}
(A)line3(B)line5(C)line6(D)line10
25.下面用来表达x的a次幂,正确的是_________。
()
(A)x^a(B)x&a
(C)Math.pow(x,a)(D)x$a
26.编译,运行下列代码后的结果是_________。
()
publicclassTest{
publicstaticvoidmain(Stringargs[]){
intage;
age=age+1;
System.out.println("Theageis"+age);
}
}
(A)编译、运行后没有输出(B)编译、运行后输出:
Theageis1
(C)能通过编译,但运行时产生错误(D)不能通过编译
27.把一个字符串按某个标记分段,下面哪个类能实现这个功能_________。
()
(A)String(B)StringBuffer
(C)StringTokenizer(D)Vector
28.下述哪些说法是正确的_________。
()
(A)java语言中的类只能有一个构造函数
(B)程序员可以自己定义自己的异常
(C)java语言中类允许多继承
(D)socket类是传输数据的网络数据流类
29.在switch(expression)语句中,expression的数据类型不能是_________。
()
(A)double(B)char(C)byte(D)short
30.如果下列的方法能够正常运行,在控制台上肯定不会显示什么_________。
()
publicvoidexample(){
try{
unsafe();
System.out.println("Test1");
}catch(SafeExceptione){
System.out.println("Test2");
}finally{
System.out.println("Test3");
}
System.out.println("Test4");
}
(A)Test4(B)Test3(C)Test2(D)Test1
31.下列关于Java多线程并发控制机制的叙述中,错误的是_________。
()
(A)Java中对共享数据操作的并发控制是采用加锁技术
(B)线程之间的交互,提倡采用suspend()/resume()方法
(C)共享数据的访问权限都必须定义为private
(D)Java中没有提供检测与避免死锁的专门机制,但应用程序员可以采用某些策略防止死锁的发生
32.在Java中,子类欲访问父类中被覆盖的成员方法,需要使用什么方法来实现_________。
()
(A)this(B)super(C)finalize(D)gc
33.利用Java语言存取数据库,建立了Statement对象后,如果要执行的SQL语句为insert,那么采用的方法最合适的是________。
()
(A)executeQuery()(B)execute()
(C)exec()(D)executeUpdate()
34.下列数组定义中,正确的是________。
()
(A)inta[][]=newint[10,10];(B)inta[10][10];
(C)inta[][]=newint[10][10];(D)inta[][10];
35.以下描述正确的是_________。
()
(A)在Java中任何类都可以创建该类的对象
(B)在定义抽象类时使用的关键字是Abstracts
(C)当一个类被final关键字修饰后,它将不能再派生子类
(D)在Java中,不再引用的空间必须由程序员释放
36.找出与3*4值相同的表达式_________。
()
(A)3/2(B)3<2(C)3<<2(D)3<<<2
37.设int型变量x=1,y=2,z=3,则表达式y+=z--/x++的y的值是________。
()
(A)3 (B) (C)4(D)5
38.在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的_________方法来完成一些画图操作。
()
(A)start()(B)stop()(C)init()(D)paint()
39.以下程序的运行结果为_________。
()
publicclassTest{
staticbooleanfoo(charc){
System.out.print(c);
returntrue;
}
publicstaticvoidmain(String[]argv){
inti=0;
for(foo('A');foo('B')&&(i<2);foo('C')){
i++;
foo('D');
}
}
}
(A)ABDCBDCB(B)ABCDABCD
(C)ACBDBDCD
(D)Anexceptionisthrownatruntime
40.设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则表达式x+y*a/x+b/y+c的值为_________类型。
()
(A)int(B)long(C)double(D)char
41.类Teacher和Student是类Person的子类;
Personp;
Teachert;
Students;
//p,t和s均非空
if(tinstanceofPerson){s=(Student)t;}
最后一句语句的结果是_________。
()
(A)将构造一个Student对象(B)表达式是合法的
(C)表达式是错误的(D)编译时正确,但运行时错误
42.指出下列程序运行的结果_________。
()
publicclassT1_4{
Stringstr=newString("good");
char[]ch={'a','b','c'};
publicstaticvoidmain(Stringargs[]){
T1_4ex=newT1_4();
ex.change(ex.str,ex.ch);
System.out.print(ex.str+"and");
System.out.print(ex.ch);
}
publicvoidchange(Stringstr,charch[]){
str="testok";
ch[0]='g';
}
}
(A)goodandabc(B)goodandgbc
(C)testokandabc(D)testokandgbc
43.x=2.5,a=7,y=4,则表达式x+a%3*(int)x%(int)y的值为_________。
()
(A)(B)
(C)(D)
44.要从文件"file.dat"文件中读出第10个字节到变量C中,下列哪个方法适合_________。
()
(A)FileInputStreamin=newFileInputStream("file.dat");
in.skip(9);
intc=in.read();
(B)FileInputStreamin=newFileInputStream("file.dat");
in.available(10);
intc=in.read();
(C)FileInputStreamin=newFileInputStream("file.dat");
in.flush(10);
intc=in.read();
(D)RandomAccessFilein=newRandomAccessFile("file.dat");
in.mark(9);
intc=in.readByte();
45.下面说法哪些是正确的_________。
()
(A)Applet可以访问本地文件(B)对static方法的调用不需要类实例
(C)(D)
46.如下程序,运行后的结果为_________。
()
intm=5;
stop:
for(inti=1;i<=10;i++){
for(intj=1;j<=5;j++){
if(i==5)breakstop;
m+=1;
}
if(i==4)continue;
m-=1;
}
System.out.println(m);
(A)20(B)21(C)22(D)23
47.下面程序的执行结果是_________。
()
publicclasstest{
static{
System.out.print("解放军辛苦了!
");
}
publicstaticvoidmain(String[]args){
System.out.print("解放军你好!
");
}
static{
System.out.print("灾区人民辛苦了!
");
}
}
(A)灾区人民辛苦了!
解放军辛苦了!
解放军你好!
(B)解放军辛苦了!
灾区人民辛苦了!
解放军你好!
(C)解放军你好!
解放军辛苦了!
灾区人民辛苦了!
(D)解放军辛苦了!
解放军你好!
灾区人民辛苦了!
48.下列程序的执行结果为________。
()
publicclassTestA{
publicTestA(){
System.out.print("众志成城!
");
}
publicTestA(inta){
System.out.print("众志成城,抗震救灾");
}
publicstaticvoidmain(String[]args){
TestArt=newTestB();
}
}
classTestBextendsTestA{
publicTestB(){
System.out.print("抗震救灾!
");
}
}
(A)众志成城!
抗震救灾!
(B)众志成城!
(C)抗震救灾!
(D)众志成城,抗震救灾
49.下列程序的执行结果为_________。
()
publicclassAClass{
Stringname=newString("");
publicAClass(){
}
AClass(Stringname){
this.name=name;
}
publicvoidprint(){
System.out.println("今夜景阳冈!
"+name);
}
}
classQTest{
publicstaticvoidmain(String[]args){
(newAClass("武松打老虎!
"){
publicvoidprint(){
super.print();
}
}).print();
}
}
(A)今夜景阳冈!
(B)武松打老虎!
(C)今夜景阳冈!
武松打老虎!
(D)武松打老虎!
今夜景阳冈!
50.下列程序的运行结果为_________。
()
classValue{
publicinti=15;
}
publicclassTest{
publicstaticvoidmain(Stringargv[]){
Testt=newTest();
t.first();
}
publicvoidfirst(){
inti=5;
Valuev=newValue();
v.i=25;
second(v,i);
System.out.println(v.i);
}
publicvoidsecond(Valuev,inti){
i=0;
v.i=20;
Valueval=newValue();
v=val;
System.out.println(v.i+""+I+"");
}
}
(A)15020(B)15015
(C)20020(D)01520
得分
评卷人
二、判断题(每小题1分,共10分)
(判断正确答案选项,并在“答题卡”的相应位置填涂,认为正确的涂“A”,错误的涂“B”。
多涂、少涂、错误均无分。
)
51.char型变量中不能存贮一个中文汉字。
()
52.使用方法length()可以获得字符串或数组的长度。
()
53.goto和const都不是Java的关键字。
()
54.super()和this()方法只能在构造函数里调用。
()
55.protected的成员只能被继承类的成员存取。
()
56.包含了抽象方法的类必须被定义为抽象类。
()
57.final类是为防止他人从你的类上派生新类,此类是不可继承的。
()
58.方法的参数变量不能是final的。
()
59.接口的所有方法默认都是public,abstract和non-static的。
()
60.String的长度是不可变的,StringBuffer的长度是可变的。
()
得分
评卷人
二、多项选择题(每小题3分,共30分)
(每一道试题下面有A、B、C、D四个备选答案,请从中选择多个可能答案,并写在题后括号内。
)
61.给定下面的代码,请问能够插入到17行并且保证程序正常编译的方法有哪些?
()
10)classCertkiller1{
11)publicCertkiller1foo(){returnthis;}
12)}
13)classCertkiller2extendsCertkiller1{
14)publicCertkiller1foo(){returnthis;}
15)}
16)classCertkill3extendsCertkiller2{
17)//insertmethodhere
18)}
(A)publicvoidfoo(){}
(B)publicintfoo(){return3;}
(C)publicCertkiller2foo(){returnthis;}
(D)publicCertkiller1foo(){returnthis;}
62.给定下面的代码,请问选项中的说法哪些是正确的?
()
classCertkiller{
staticvoidalpha(){/*morecodehere*/}
voidbeta(){/*morecodehere*/}
}
(A)Certkiller.beta()是beta()方法的一种有效的调用
(B)Certkiller.alpha()是alpha()方法的一种有效的调用
(C)beta()能够直接调用alpha()方法
(D)alpha()能够直接调用beta()方法
63.给定下面的四个代码段,请问如果类C的第3行抛出一个NullPointerException异常,下面选项中的描述,哪些是正确的?
()
代码段I:
1)publicclassA{
2)publicvoidmethod1(){
3)Bb=newB();
4)b.method2();
5)//morecodehere
6)}
7)}
代