java程序设计答案.docx
- 文档编号:28570293
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:33
- 大小:25.35KB
java程序设计答案.docx
《java程序设计答案.docx》由会员分享,可在线阅读,更多相关《java程序设计答案.docx(33页珍藏版)》请在冰豆网上搜索。
java程序设计答案
《java程序设计》复习题
第一部分选择题(单选)
1.
javac是java的(B)
A.解释器
B.编译器
C.小程序浏览器
D.调试器
2.
appletviewer是java的(C)
A.解释器
B.编译器
C.小程序浏览器
D.调试器
3.
编译一个定义了三个类和三个方法的java源码文件,总共会产生几个字节码文件,其扩展名是什么?
(C)
A.5个字节码文件,其扩展名是“.java”
B.2个字节码文件,其扩展名是“.java”
C.3个字节码文件,其扩展名是“.class”
D.2个字节码文件,其扩展名是“.class”
4.
java源码文件的名称与主类的名称(B)
A.必须相同但不区分大小写
B.必须相同且区分大小写
C.必须不同
D.任意
5.
下面那些选项不能用做变量名的首字符(C)
A.字母
B.下划线(_)
C.数字
D.美元符号($)
6.
下面哪个不是java的原始数据类型?
(B)
A.short
B.boolean
C.Int
D.Float
7.下面哪条语句不会出现编译警告或错误?
(A)
A.floatf=1.3F;
B.chatc=”a”;
C.floatf=1.3;
D.booleand=null;
8.
以下声明常量不正确的是(B)
A.finalintPI=3;
B.finalPI=3;
C.staticfinalintPI=3:
D.publicstaticfinalintPI=3;
9.
java定义了4个整型数据类型:
字节性(byte)短整型(short)整型(int)长整型(long),其中byte占用内存为(A)
A.8bit
B.16bit
C.32bit
D.64bit
10.
5%2.1的值是(D)
A.1
B.0
C.0.8
D.不能通过编译
11.
-11&3的值是(A)
A.1
B.3
C.9
D.–11
12.
8<<2的值是(A)
A.2
B.4
C.8
D.32
13
若有inta=1,b=2,c=3,d=4;则表达式a>b?
a:
c>d?
c:
d的值是(D)
A.1
B.2
C.3
D.4
14.
以下为合法类型转换的为(D)
A.(int)”A”
B.(char)”A”
C.(boolean)(2-2)
D.(char)(651/12)
15
下面哪条语句是正确的?
(C)
A.inta={1,2,3,4,5,};
B.intb=(1,2,3,4,5)
C.intc[]={1,2,3,4,5}
D.int[]d={1,2,3,4,5}
16.
对于数组inta[];下面那条语句可以输出数据a的元素个数?
D
A.System.out.println(a.size);
B.System,out.println(a.size());
C.System.out.println(a.length());
D.System.out.println(a.length);
17.
可以用作switch表达式的基本数据类型分别是(B)
A.boolean
B.byte
C.float
D.double
18.
下面的while语句退出时.i的值是(D)
byteb=1;
inti=0;
while(b++>0)
i=i+1;
A.126
B.0
C.127
D.出现死循环,i的值无穷大
19.
设J_Hello.java文件内容如下:
classJ_Hello{
staticvoidmain(Stringargs[]){
System.out.println(“Hello!
”);
}
}
下面说法正确的是(D)
A.J_Hello.java无法通过编译
B.J_Hello.java可以通过编译,但运行时出现“Mainmethodnotpublic”提示信息
C.J_Hello.java可以通过编译,但无法运行,且无任何提示信息
D.J_Hello.java可以通过编译,可以正常运行,输出“Hello!
”
20
下面哪个类声明是正确的(D)
A.abstractfinalclasscar{}
B.abstractprivatecar(){}
C.protectedprivatecar{}
D.publicabstractclasscar{};
21.
下列(C)的说法是错误的。
A.Java语言只允许单一继承
B.Java语言允许多个接口
C.Java语言不允许一个类派生多个子类
D.Java语言的单一继承使得代码更加可靠
22.
下述(A)说法是正确的
A.实例变量是类的成员变量
B.实例变量是用static关键字声明的
C.方法变量在方法执行时创建
D.方法变量在使用之前不用初始化
23.
使用继承的优点(A)
A.基类的大部分功能可以通过继承关系自动进入派生类
B.继承将基类的实现细节暴露给派生类
C.基类实现出现问题,、就会影响到派生类
D.可在运行期决定是否选择继承代码,有足够的灵活性
24.
下列关于修饰符混用的说法,错误的是(A)
A.abstract不能与final并列修饰同一个类
B.abstract类中不能有private的成员
C.abstract方法必须在abstract类中
D.static方法中能处理非static的属性
25
对于下列代码:
publicclassParent
{publicintaddValue(inta,intb)
{
ints;
s=a+b;
returns;}
}A
classChildextendsParent{…..}
Child类中欲把Parent类中的addValue方法覆盖,下述什么方法可以加入类Child中?
A
A.privateintaddValue(inta,intb){….}
B.publicfloataddValue(inta,intb){….}
C.publicintaddValue(inta,intb){….}
D.publicintaddValue(inta,intb)throwsMyException{….}
26声明成员变量为临时变量(又称为过渡变量)所用的保留字是(C)
A.final
B.abstract
C.transient
D.temp
27.
声明公共变量所用的保留字是(A)
A.public
B.private
C.protectede
D.static
28
声明受保护变量所用的保留字是(C)
A.public
B.private
C.protected
D.static
29
设有下面的程序段
1.classStaticStuff
2.{
3.staticintx=10;
4.static{x+=5;}
5.publicstaticvoidmain(Stringargs[])
6.{
7.System.out.println(“x=”+x);
8.}
9.static{x/=3;}
10.}
哪个说明是正确的()
A.4行和9行不能通过编译,因为缺少方法名和返回类型
B.9行不能通过编译,因为只能有一个静态初始化器
C.编译通过,执行结果为:
x=5;
D.编译通过,执行结果为:
x=3;
30
对于下述类定义哪个说法正确?
(A)
classMyStringextendsString{…..}
A.可以成功编译
B.无法编译,因为没有main方法
C.无法编译,因为String是抽象类
D.无法编译,因为String是final类
31
不能在Java派生类中被覆盖的方法是(C)
A.构造函数
B.动态方法
C.final方法
D.抽象方法
32
关于方法覆盖,下面哪个说法是错误的(A)
A.方法覆盖可以发生在任意类之间
B.覆盖方法与被覆盖的方法返回值类型相同
C.如果被覆盖的方法是用public修饰的,覆盖方法也必须用public修饰
D.覆盖方法不能抛出比被覆盖的方法更多的异常
33
下面哪个方法声明是正确的?
B
A.abstractfinalStringabc(){}
B.publicabstractabc(){}
C.privatestaticvoidabc(){}
D.publicabstractstaticvoidabc(){}
34
编译以下代码,将出现什么情况?
()
abstractclassShape{
abstractvoiddraw();
}
classSquareextendsShape{}
A.Square类和Shape类都可以成功编译
B.Square类无法编译,但Shape可以编译
C.Shape类无法编译,但Square可以编译
D.Square类和Shape类都无法编译
35
关于Java的垃圾回收机制,下面那些结论是正确的?
()
A.程序可以任意指定释放内存的时间
B.正确的程序写法是不能依赖垃圾回收的时间或者顺序的
C.程序不能标识某个局部变量的引用不再被使用
D.程序可以显示地立即释放对象占有的内存
36
要求设计一个类,它拥有一个特殊的成员域,该成员域必须能够被这个类的子类访问到,但是不能被不在同一个包内的其他类访问到,下面那些设计可以满足上述要求?
()
A.该成员域的封装属性设置为public
B.该成员域的封装属性设置为private
C.该成员域的封装属性设置为protected
D.该成员域不需要特殊的封装属性
37
接口的实现所用的关键字是()
A.interface
B.implements
C.extends
D.throws
38
在编写异常处理的Java程序中,每个catch语句块应该与什么语句块对应?
A.if-else
B.switch
C.try
D.throw
39
在编写JavaApplication程序时,若需要使用到标准输入、输出语句,必须在程序的开头写上什么语句?
A.importjava.awt.*;
B.importjava.applet.Applet;
C.importjava.io.*;
D.importjava.awt.Graphics;
40
下面哪个类最适合处理大数据量的文本文件?
A.java.io.
B.java.io.
C.java.io.BufferedReader
D.java.io.RandomAccessfile
41
以下什么类不属于字符流类?
A.Reader
B.
C.BufferedInputStream
D.StringReader
42
在设计java的数据流操作的程序中,必须加入什么语句?
A.importjava.awt.*;
B.importjava.applet.*;
C.importjava.io.*;
D.importjava.awt.event.*;
43
以下哪个可能包含菜单条?
A.Panel
B.Frame
C.Applet
D.Dialog
44
以下代码完成画线功能,指出所画线的颜色
g.setColor(Color.red.green.yello.cyan);
g.drowLine(0,0,100,100)
A.red
B.green
C.yello
D.cyan
45
Thread类的什么方法实现线程的暂时停止操作?
A.destroy()
B.stop()
C.sleep()
D.suspend()
46
处理线程间通信等待和通知的方法是?
()
A.wait()和notify()
B.start()和stop()
C.run()和stop()
D.wait()和suspend()
47
在java中,开发图形用户界面的程序需要使用系统提供的类库,这个类库是()
A.java.io
B.java.awt
C.java.applet
D.java.event
`48
applet所在的页面被浏览和加载后,applet就诞生了,当浏览器切换到别的页面时,它的什么方法被调用?
()
A.init
B.start
C.stop
D.destroy
49标签组件由什么类生成()
A.Label
B.Button
C.Choice
D.Checkbox
50
画矩形,使用什么方法?
A.drawLing(x1,y1,x2,y2)]
B.drawRect(x1,y1,w,h)
C.drawOval(x1,y1,w,h)
D.drawString(s,x1,y1)
第二部分填空题
1.sun公司提供的Java开发工具包,用于台式机的开发工具包是__________
2.Java程序可分为两种基本类型,它们是__________和__________
3.Java虚拟机运行Java程序的基本步骤是:
首先从后缀为__________的文件加载代码到内存中,接着在内存中__________代码的合法性及__________,然后__________执行安全和合法的代码
4.Java标识符是由__________、__________、__________组成的字符序列
5.Java字符(char)采用的是ISO规定的__________字符集
6.int类型数据在内存中占__________个二进制位
7.在Java语言中,字符串直接量是用__________括起来的字符序列
8.字符串不是字符数组,而是类__________的实例对象
9.在类中声明的变量叫__________,可在__________中使用
10.在方法和方法块中声明的变量叫__________,其使用范围是__________
11.byte或short或int类型数据与long类型数据混合运算时,其结果是__________类型
12.设x=2,则表达式(x++)/3的值是__________
13.设x=5,y=10,则表达式x>y&&x++=y--的值是__________
14.设有运算符!
=、*、&&、>+、?
:
按优先级从高到低的排列顺序是__________
15.表达式(3<5)^(6<4)的值是__________
16.表达式(byte)(1200)的值是__________
17.数组对象的长度在数组对象创建后,就__________改变
18.已知数组a的定义是“inta[]={1,2,3,4,5};”则这时a[2]的值是__________
19.如有声明floata[][]=newfloat[3][4];则系统为该数组分配__________个字节的空间
20.对于数组int[][]t={(1,2,3,4),(5,6,7,8)};t.length等于__________,t[0].length等于__________
21.swith语句中的case后面的常量可以是__________类型和__________类型
22.若有byteb=1;intI=0;while(++b>0)I=I+1;则while退出时I的值为__________
23.面向对象的计算机语言一般应有3个基本特征,分别是__________、__________、__________。
24.如果一个JavaApplet源程序文件只定义有一个类,其类名为MyApplet,则类MyApplet必须是__________类的子类
25.一个复杂的系统往往包含多个对象,这些对象间可能存在的关系有三种,它们是__________、__________、__________
26.__________方法是一种仅有方法头,没有具体方法体个操作实现的方法,该方法必须在抽象类中定义
27.__________方法是不能被当前类的子类重新定义的
28.Java语言通过__________机制简化了程序的内存管理。
29.在Java中有两种多态,一种是使用方法的__________实现多态,另一种是使用方法的__________实现多态。
30.被protected修饰的变量称为__________,可被__________访问。
31.抽象方法是指__________的方法,抽象方法只能出现在__________中
32.在JAVA类的层次结构中,最顶端的类是__________,它在__________中定义,是所有类的始祖。
33.不能覆盖父类中的__________方法和__________方法。
34.创建子类对象实例时,系统可以自动调用父类的__________构造方法,初始化__________的数据。
35.对于父类中的构造方法,系统不能自动调用它们,只能通过在子类构造方法中使用关键字__________调用,其调用语句位置必须是__________
36.创建一个名为MyPackage的语句是__________,该语句应该放在程序的位置为:
__________
37.Java提供的异常处理机制包括两个过程__________和__________
38.在Java程序中,通过接口的定义可以实现__________重继承关系
39.顺序执行以下两条语句的输出结果是:
______
Strings=”沈阳市”;
System.out.println(s.length());
40.字符串分为两大类,一是字符串常量,使用__________类的对象表示;另一类是字符串变量,使用__________类的对象表示。
41.创建一个标识有“关闭”按钮的语句是__________
42.Java的组件主要是在__________和__________中
43.线程创建后,可以在任何时刻调用__________、方法改变线程的优先级
44.调用__________方法可以停止线程的运行
45.Applet所在的页面被浏览和加载后,Applet就诞生了。
当浏览器切换到别的页面时,它的__________方法被调用
46.标签组件由__________类生成。
47.画矩形的方法是__________
48.关键字synchronized的作用是_________________________
49.当线程对象被调度执行时自动调用__________方法
50.当线程对象被调度执行时自动调用__________方法
第三部分回答问题
1、上机编译编写的源程序,使用什么命令进行编译?
源程序文件的扩展名是什么?
Java编译器产生的文件扩展名是什么?
2、上机解释执行编译好的程序,使用什么命令进行解释?
Java解释器解释的文件的扩展名是什么?
3、简述Java语言的主要特点。
4、Java应用程序和Java小应用程序有何区别?
5、Java能跨操作系统平台运行的原理是什么
6、简述Java程序的框架结构
7、float和double型数据在赋值时有哪些注意事项?
8、float和double型数据在赋值时有哪些注意事项?
9、Java为什么把字符串定义为类?
为什么定义了两个字符串类?
10、静态变量有何特点?
如何存取静态变量?
11、静态方法有何特点?
静态方法存取成员变量时有何要求?
12、什么是抽象类,抽象方法?
他们有何特点?
13、类与对象有何关系?
如何创建对象?
14、什么是类变量、成员变量、实例变量、局部变量?
15、什么是类的多态性?
何为隐藏、覆盖、重载?
16、this和super有什么作用?
17、什么是构造方法?
构造方法有何特点和作用?
18、设Object类派生出G类,G类派生出F类,F类派生出ME类
问:
1构造器的调用顺序是什么?
2如果父类的构造器重载了,可通过什么方法调用父类中某个指定的构造器?
3如果子类自己的构造器重载了,可通过什么方法在一个构造其中调用另一个构造器?
19、什么是标准输入输出方法?
什么是标准输入输出设备?
标准输入方法read在使用中应注意什么?
它输入的数据是什么类型?
20、包有什么作用?
Java系统提供了哪些常用包?
如何使用包?
21、接口有什么作用?
接口有哪些性质?
22、什么是异常?
为什么进行异常处理?
如何创建一个自定义异常?
如何抛出自定义异常?
23、试述JavaApplet的工作原理,其生命周期是如何划分的?
24、如何从HTML文件中向Applet传递参数?
这些参数是如何被接收和处理的?
25、什么是Java数据流?
第四部分写出下面程序的运行结果或完成的功能(以下各程序请自己商机通过,得出结果。
)
1.
publicclasssum{
publicstaticvoidmain(Stringargs[]){
doublesum=0.0;
for(intI=1;I<=100;I++)
sum+=1.0/(double)I
System.out.println(“sum=”+sum);
}
}
2.
publicclassJ_Test{
publicstaticvoidmain(Stringargs[]){
inti=1,x=2;
switch(x){
case1:
i++;
case2:
i--;
case3:
++i;break;
case4:
--i;}
System.out.println(i);
}
}
3.
classQ1{
publicstaticvoidmain(Stringargs[]){
doubled=5.55;
Decdec=newDec();
dec.decrement(d);
System.out.print(d);
}
}
classDec{
publicvoiddecrement(doubledecMe){
decMe=decMe-1;
}
}
4.
使用命令javaabcGoodMoning运行下面程序:
问输出什么?
Publicclassabc{
Publicstaticvoidmain(Stringargs[]){
Chargerc=newCharger();
c.method(args);
System.out.print(args[0]+””+arg[1]);
}
}
classCharger{
voidmethod(String[]s){
Stringtemp=s[0];
s[0]=s[1];
s[1]=temp;
}
}
5.
设有如下程序:
publicclassJ_Test9{
publicstaticvoidmain(Stringargs[]){
intsum=0;
for(intI=1;I<12;I++){
for(intj=1;j<4;j
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 程序设计 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)