java期末复习试题卷.docx
《java期末复习试题卷.docx》由会员分享,可在线阅读,更多相关《java期末复习试题卷.docx(12页珍藏版)》请在冰豆网上搜索。
![java期末复习试题卷.docx](https://file1.bdocx.com/fileroot1/2022-10/17/b614f079-fc97-44a8-bb43-4e252c9dfd0a/b614f079-fc97-44a8-bb43-4e252c9dfd0a1.gif)
java期末复习试题卷
学号:
______________姓名:
___________班级:
______________日期:
__________________
(说明:
本次测试除题型相近外,也是期末考试内容的补充,请认真完成上传FTP和复习备考!
)
一、填空题
1、Java源程序文件的扩展名是_.java_________,编译源程序的命令是__javac_________。
2、Java程序可分为___applet___________和__applications两种类型。
3、声明静态成员的关键字是____________static___,定义一个接口的关键字是___interface___________。
4、创建pack1.pack2包的语句是____packagepack1\packagepack2_,importx.y.Myclass;语句的功能是___引用X包中的Y包的MyClass类_________________________________。
5、_Object________类是所有Java类的直接或者间接父类。
6、转义字符_\t____能够实现“将输出内容跳到下一个制表位”的功能。
7、假设在程序中已执行:
Calendarcurrent=newGregorianCalendar();语句,则current.get(Calendar.YEAR)返回的是__当前时间的年份__________________________。
二、单项选择题
1、以下哪个是应用程序main()方法的正确形式?
【】
A.publicstaticintmain(Stringargs[])B.publicstaticvoidmain(Stringargs[])
C.publicstaticvoidMAIN(Stringargs[])D.publicstaticvoidmain(charargs[])
2、请在Java预定义了的数据类型中,为“姓名”选择一种合适的数据类型:
【】
A.intB.StringC.booleanD.float
3、short型数据的取值范围为【】
A.-27~27-1B.-216~216-1C.-215~215-1D.-231~231-1
4、下列标识符中,哪一个是合法的?
【】
A.$personB.2abC.*pointD.this
5、已知x=10,则条件表达式(x>=5)&&(x<=2)的值是【】
A.0B.1C.trueD.false
6、下列程序片段的输出结果是【】
intX=0;
if(X>0)X=1;
switch(x)
{
case1:
System.out.println
(1);
case0:
System.out.println(0);
case2:
System.out.println
(2);
break;
case3:
System.out.println(3);
default:
System.out.println(4);
break;
}
A.0B.4C.2D.1
2330
7、在Java中定义常量的正确语句是【c】
A.intvalue=20;B.constintVALUE=20;
C.finalintVALUE=20;D.intVALUE=20;
8、设有如下的程序代码,在执行完后x和y的值各是多少?
【】
intx=8,y=3,z;
z=x+++--y;
A.x=8,y=3B.x=10,y=2C.x=9,y=1D.x=9,y=2
9、对于名为Myclass的类,以下哪种方式是定义无参数构造方法的正确形式?
【C】
A.intMyclass(){…}B.voidMyclass(){…}
C.Myclass(){…}D.Myclass(intmyClassObject){…}
10、已有:
Stringstr="12.345";现欲将str转换为对应的双精度浮点数,正确的语句为【D】
A.Integer.parseInt(str);B.Double.valueOf(str);
C.Float.parseFloat(str);D.Double.parseDouble(str);
11、基类中具有【】访问权限的成员,不允许在子类中直接对其进行访问或调用
A.publicB.privateC.protectedD.缺省的(即package)
12、对于字符串s="java",下面哪个选项可以返回字符'v'在字符串中的位置?
【】
A.s.charAt('v');B.s.indexOf('v');C.indexOf('v');D.indexOf(s,'v');
13、以下哪一项是创建抽象类X的引用的正确方式?
【C】
A.Xx;x=newX();B.Xx=newX();C.Xx;D.以上均不正确
14、接口X声明了两个空方法m1()和m2(),当实现接口X时,以下哪个语法是正确的?
【】
A.classYextendsX{B.classYextendsX{
publicvoidm1(){...}publicvoidm1(){...}
publicvoidm2(){...}}
}
C.classYimplementsX{D.classYimplementsX{
publicvoidm1(){...}publicvoidm1(){...}
publicvoidm2(){...}}
}
三、根据题目要求,把下面的程序补充完整
1、以下程序片段的功能是计算分段函数的值:
输入x,求相应的y值
……
Doublex,y;//将变量x和y声明为double类型
Strings=JOptionPane.showInputDialog("请输入x的值:
");
x=Double.parseDouble(s);
if(x<-5){
y=-x;
}elseif(x<5){
y=Math.sin(x);
}else{
y=2*x-3;
}
JOptionPane.showMessageDialog(null,"x="+x+'\n'+"函数值为:
"+y);
……
2、以下程序片段实现的功能是对一维数组的元素求和:
……
intarray[]={85,68,12,33,91};//声明一个名为array的int型一维数组
intsum=0;//声明一个int型变量sum,初始值为0
for(inti=0;isum=sum+array[i];
System.out.println("累加结果:
"+sum);
……
四、写出下列程序的运行结果
1、
//字符串的比较
publicclassStringCompare{
publicstaticvoidmain(Stringargs[]){
Strings1="abc";
Strings2=newString("abc");
System.out.println(s1==s2);
System.out.println(s1.equals(s2));
System.out.println(pareTo(s2));
}
}
程序运行结果:
__falsetrue0___
2、
//实现多态的程序
classAnimal{
publicvoiddisplay(){
System.out.println("我是一只可爱的动物,...");
}
}
classCatextendsAnimal{
publicvoiddisplay(){
System.out.println("我是能捉老鼠的好猫,...");
}
}
classDogextendsAnimal{
publicvoiddisplay(){
System.out.println("我是主人忠诚的卫士,...");
}
}
publicclassAnimalTest{
publicstaticvoidmain(Stringargs[]){
Animalam=newAnimal();
am.display();
am=newDog();
am.display();
am=newCat();
am.display();
}
}
程序运行结果:
_我是一只可爱的动物,...
我是主人忠诚的卫士,...
我是主人忠诚的卫士,...
___________________________
五、编程题
1.类的继承
(1)定义一个矩形类Rect,它封装了:
⏹两个成员变量(访问权限为private):
length //表示矩形的长度,double类型
width //表示矩形的宽度,double类型
⏹七个成员方法(访问权限为public):
Rect(doublel,doublew)//带参数的构造方法
voidsetLength(doublel)//设置矩形的长度
doublegetLength()//返回矩形的长度
voidsetWidth(doublew)//设置矩形的宽度
doublegetWidth()//返回矩形的宽度
doublegetArea()//返回矩形的面积
StringtoString()//返回形如:
“矩形的长度:
xxx,宽度:
xxx,面积:
xxx”
字符串(其中:
xxx表示相应的数值)
(2)再定义一个立方体类Cube,它继承了矩形类Rect(上一题已定义),并增加了:
⏹一个成员变量(访问权限为private):
height//立方体的高度,double类型
⏹三个成员方法(访问权限为public):
Cube(doublel,doublew,doubleh)//带参数的构造方法,需要调用基类带参数构造函数;
doublegetVolume()//返回立方体的体积(计算公式:
底面积×高度)
StringtoString()//重写toString()方法,返回形如:
“立方体的长度:
xxx,宽度:
xxx,高度:
xxx,体积:
xxx”
字符串(其中:
xxx表示相应的数