java程序设计题库.docx
《java程序设计题库.docx》由会员分享,可在线阅读,更多相关《java程序设计题库.docx(13页珍藏版)》请在冰豆网上搜索。
java程序设计题库
一、选择
1.就高级程序的编译过程来讲,可分为编译型和解释型两种。
下面涉及解释型语言的是( )。
i.A.CB.C++C.FortranD.Java
2.方法头中static修饰符的含义:
( )
i.A.方法体为空 B.定义的方法没有形参
ii.C.该方法属于类的方法 D.方法的返回值不能参加算术运算
3.MAX_LENGTH是int型public成员变量,变量值保持为常量100,用简短语句定义这个变量。
( )
a)A.publicintMAX_LENGTH=100B.finalintMAX_LENGTH=100
b)C.finalpublicintMAX_LENGTH=100D.publicfinalintMAX_LENGTH=100
4.下面哪个单词是Java语言的关键字( )
i.A.FloatB.thisC.stringD.unsigned
5.JVM的含义是()。
A.Java编译器B.Java运行环境C.Java开发环境D.Java虚拟机
6.算术表达式1+2/3-4*5的值为。
( )
i.A.1B.-19C.-5D.0
7.JavaApplet在被浏览器加载时首先被执行、且在applet整个生命周期中只被运行一次的方法是( )?
i.A.init()B.start()C.opreationcrawl()D.reader()
8.以下有关构造方法的说法,正确的是:
( )
A.一个类的构造方法可以有多个。
B.构造方法在类定义时被调用。
C.构造方法只能由对象中的其它方法调用。
D.构造方法可以和类同名,也可以和类名不同。
9.在使用interface声明一个接口时,只可以使用( )修饰符修饰该接口。
i.A.private B.protected C.private protected D.public
10.编译JavaApplet源程序文件产生的字节码文件的扩展名为()。
i.A.javaB.classC.byteD.exe
b)16.下面不符合Java标识符规定的是( )。
i.A.$_is7TrueB.IamVariableC.333LoadD._trueFalse
11.以下有关类的继承的说明中,正确的是:
( )
A.子类既可直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性
B.子类只能继承父类的方法,不能继承父类的属性
C.子类只能继承父类的非私有属性,不能继承父类的方法
D.子类不能继承父类的私有属性
12.哪个关键字可以抛出异常?
( )
i.A.public B.finallyC.throwD.static
13.若要说明一个抽象类,使用的关键字是( )。
i.A.staticB.implementsC.finalD.abstract
14.数组中可以包含什么类型的元素?
( )
i.A.int型B.string型C.数组D.以上都可以
15.事件监听接口中方法的返回值是?
( )
i.A.intB.StringC.voidD.Object
16.在浏览器中执行applet程序,以下选项中的哪个方法将被最先执行( )。
i.A.init()B.start()C.destroy()D.stop()
17.Java中线程的5种状态包括( )。
i.A.新建、停止B.运行、撤消
ii.C.运行、阻塞D.就绪、启动
18.以下哪项可能包含菜单条( )。
i.A.PanelB.FrameC.AppletD.Dialog
19.请问所有的异常类皆继承哪一个类?
( )
i.A.java.io.Exception B.java.lang.Throwable
ii.C.java.lang.Exception D.java.lang.Error
20.能从循环语句的循环体中跳出的语句是( )。
i.A.for语句B.break语句C.while语句D.continue语句
21.当未用任何权限修饰符声明类的成员时,Java认为该成员的访问权限为( )。
i.A.公有的B.保护的C.默认的D.私有的
22.在抽象类中,( )。
i.A.必须有抽象方法B.可以有抽象方法,也可以没有抽象方法
ii.C.不能含有抽象方法D.上述说法都不对
23.在调用方法时,( )。
A.实参的顺序、个数必须与形参一致。
B.实参的顺序、类型、个数必须与形参一致。
C.实参的类型、个数必须与形参一致。
D.实参的顺序、类型必须与形参一致。
24.对一个类Myclass来说,它的构造方法正确的写法是( )。
i.A.publicvoidMyclass(){}B.publicMyclass(){}
ii.C.Myclass(){}D.voidMyclass(){}
25.设Derived类为Base类的子类,则如下对象的创建语句中哪个是错误的?
( )
i.A.BaseObj=newDerived();B.DerivedObj=newBase();
ii.C.BaseObj=newBase();D.DerivedObj=newDerived();
26.Javaapplication中的主类需包含main方法,以下哪项是main方法的正确形参( )
i.A.String args B.String args[]
ii.C.Char arg D.StringBufferargs[]
27.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。
这种面向对象程序特性称为( )
i.A.隐藏B.覆盖C.重载D.Java不支持此特性
28.若要启动一个线程,必须调用( )方法。
i.A.start()B.run()C.stop()D.new
29.JCreator是()。
i.A.一种全新的程序语言B.一种Java程序开发辅助工具
ii.C.一种由Java写成的浏览器D.一种游戏软件
30.在创建对象时,必须( )。
A.先声明对象,然后才能使用对象。
B.先声明对象,为对象申请内存空间,初始化对象,然后才能使用对象。
C.上述说明都对。
D.上述说明都不对。
二、填空
1.菜单组件由菜单条、____________、____________三部分组成。
2.运行一个编译好的Java字节码程序,需要调用Java的解释器软件,解释运行的三个阶段为_____________、代码校验和______________。
3.intx1,x2,a=3,b=3;x1=a--,x2=--b;则执行代码的结果为
x1=___________,x2=___________。
4.Java程序可以分为两类,分别是_____________________和_____________________。
5.Applet是一种特殊的Java程序,它通常借助于__________工作,其编译后的____________文件必须嵌入在HTML文件中。
6.Java程序开发包括下面三个过程:
______________、______________、运行。
7.若x=5,y=8,则表达式y+y*x++和y!
=++x?
x:
y运算后的结果分别为_________、___________。
8.在Java语言中,逻辑常量只有___________和___________两个值。
9.构造方法的方法名必须与___________名相同。
10.使用运算符___________创建类的对象,给对象分配内存空间。
三、问答
1.开发与运行Java程序需要经过哪些主要步骤和过程?
2.什么叫标识符?
标识符的规则是什么?
3.类中的实例变量在什么时候会被分配内存空间
4.简述Java语言中抽象类和接口概念的差异和使用方式。
5.怎样区分应用程序和小应用程序?
应用程序的主类必须为public权限吗?
6.什么叫关键字?
请说出5个关键字。
7.什么叫方法的重载?
构造方法可以重载吗?
8.程序中若有事件处理,需要包括哪些设计步骤
9.确定一个字符数组长度与确定一个String对象的长度有什么区别?
10.如何区分应用程序和小应用程序。
11.类中的实例方法可以操作类变量(即static变量)吗?
类方法(即static方法)可以操作实例变量吗?
12.JVM、JDK、JFC的中文名字分别是什么?
13.Frame类对象的默认布局是什么布局?
Panel类对象的默认布局是什么布局?
14.Swing组件和AWT组件相比有什么优点?
四、程序阅读
1.
publicclassE
{
publicstaticvoidmain(Stringargs[]){
long[]a={1,2,3,4};
long[]b={100,200,300,400,500};
b=a;
System.out.println("数组b的长度:
"+b.length);
System.out.println("b[0]="+b[0]);
}
}
2.
publicclassE
{
publicstaticvoidmain(Stringargs[]){
charx='你',y='e',z='吃';
if(x>'A'){
y='爱';
z='情';
}elsey='我';
z='她';
System.out.println(""+x+y+z);
}
}
3.
publicclassE3{
publicstaticvoidmain(Stringargs[]){
Strings="西安石油大学";
chara=s.charAt
(2),b=s.charAt(4);
System.out.print(a);
System.out.println(b);
}
}
4.
publicclassE3{
publicstaticvoidmain(Stringargs[]){
charc='\0';
for(inti=1;i<=4;i++){
switch(i){
case1:
c='b';System.out.print(c);
case2:
c='e';System.out.print(c);break;
case3:
c='p';System.out.print(c);
default:
System.out.print("!
");
}
}
}
}
5.下列程序有什么错误?
publicclassTakecare{
inta=90;
staticfloatb=10.98f;
publicstaticvoidmain(Stringargs[]){
floatc=a+b;
System.out.println("c="+c);
}
}
6.阅读程序段,回答问题:
publicclassClassA{
publicvoidmethod1(inti){}
publicvoidmethod2(inti){}
publicstaticvoidmethod3(inti){}
publicstaticvoidmethod4(inti){}
}
publicclassClassBextendsClassA{
publicstaticvoidmethod1(inti){}//method1
publicvoidmethod2(inti){}//method2
publicvoidmethod3(inti){}//method3
publicstaticvoidmethod4(inti){}//method4
}
问题:
ClassB中有method1、method2、method3、method4四个方法,方法
_________覆盖了父类方法;方法_________隐藏了父类方法。
答:
7.
publicclassTryCatchFinally{
staticvoidProc(intsel){
try{
if(sel==0){
System.out.println("noException");
return;
}elseif(sel==1){
inti=0;
intj=4/i;
}
}catch(ArithmeticExceptione){
System.out.println("Catch");
}catch(Exceptione){
System.out.println("Willnotbeexecuted");
}finally{
System.out.println("finally");
}
}
publicstaticvoidmain(Stringargs[]){
Proc(0);
Proc
(1);
}
}
8.
importjava.util.*;
publicclassLinkedListExample{
publicstaticvoidmain(Stringargs[]){
LinkedListlinkedlist=newLinkedList();
linkedlist.add(newInteger
(1));
linkedlist.add(newInteger
(2));
linkedlist.add(newInteger(3));
linkedlist.add(newInteger(4));
linkedlist.add(newInteger(5));
System.out.println("Theoriginalcontentsofthelinkedlistis:
");
System.out.println(linkedlist);
linkedlist.add(2,"hello");
linkedlist.addFirst("First");
linkedlist.addLast("Last");
System.out.println("Afteraddingelements,thelinkedlistis:
");
System.out.println(linkedlist);
}
}
五、程序填空
1.
importjava.util.*;
publicclassPraxis2_8{
publicstaticvoidmain(String[]args){
ScannerconsoleScanner=newScanner(System.in);
System.out.print("请输入正整数x:
");
intx=consoleScanner.nextInt();
for(inty=0;yfor(intm=x-y-1;m>0;m--){
System.out.print("");
}
for(intn=0;nSystem.out.print("*");
}
System.out.println();
}
}
}
2.
importjava.io*;
classFileInputDemo{
publicstaticvoidmain(Stringargs[]){
if(newB()){
try{
FileInputStreamfstream=newFileInputStream(args[0]);
DataInputStreamin=newDataInputStream(b.f());
while(in.available()!
=0){
System.out.println(String.valueOf(b.g()));
}
in.close();
}catch(Exceptione){
System.out.println(“Fileinputerror”);
}
}elseSystem.out.println(“Invalidparameters”);
}
}
3.
publicclassCircle{
doubleradius;
publicCircle(){}
publicCircle(double_radius){
radius=_radius;
}
publicdoublegetArea(){
return3.14*radius*radius;
}
publicstaticvoidmain(Stringargs[]){
Circlecircle=newCircle(3);
System.out.pringln(“半径为3的圆面积为:
”+circle.getArea());
System.exit(0);
}
}
六、编程
写出一个类Person,并由该类做父类派生出一个子类Employee。
其中Person类具有Name、Age两个保护属性,分别为String类型和整型,且具有公有的getAge方法,用于返回Age变量的值。
Employee类具有保护属性Empno,为整型。
请使用FileOutputStream类向文本文件myfile.txt中写入字符串“IloveXi’anShiyouUniversity”。