《JAVA语言程序设计》期末考试试题题库整理版.docx
- 文档编号:25325248
- 上传时间:2023-06-07
- 格式:DOCX
- 页数:30
- 大小:25.19KB
《JAVA语言程序设计》期末考试试题题库整理版.docx
《《JAVA语言程序设计》期末考试试题题库整理版.docx》由会员分享,可在线阅读,更多相关《《JAVA语言程序设计》期末考试试题题库整理版.docx(30页珍藏版)》请在冰豆网上搜索。
《JAVA语言程序设计》期末考试试题题库整理版
一、单项选择题
1、如下哪个是Java中的标识符()
A、publicB、superC、3numberD、width
2、如下哪个是Java中的标识符()
A、fieldnameB、superC、3numberD、#number
3、已知如下定义:
Strings="story";下面哪个语句不是合法的()
A、s+="books";B、s=s+100;
C、intlen=s.length;D、Stringt=s+“abc”;
4、如下哪个是Java中有效的关键字()
A、nameB、helloC、falseD、good
5、定义一个类,必须使用的关键字是()
A、publicB、classC、interfaceD、static
6、定义一个接口必须使用的关键字是()
A、publicB、classC、interfaceD、static
7、下列哪一个import命令可以使我们在程序中创建输入/输出流对象()
A、importjava.sql.*;B、importjava.util.*;
C、importjava.io.*;D、import.*;
8、关于对象成员占用内存的说法哪个正确?
()
A.同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间
B、同一个类的对象共用同一段内存
C.对象的方法不占用内存
D.以上都不对
9、下面关于子类和父类构造函数描述正确的是( )
A、子类必须通过super关键字调用父类无参的构造函数
B、子类必须通过this关键字调用父类无参的构造函数
C、调用父类的构造函数语句必须出现在子类构造函数的第一行
D、如果子类调用了自己有参的构造函数,就不能调用父类的构造函数
10、抽象方法( )
A、可以有方法体B、是没有方法体的方法
C、可以出现在非抽象类中
D、抽象类中的方法都是抽象方法
11、this和super():
A、都可以用在main()方法中B、都是指一个内存地址
C、意义相同D、不能用在main()方法中
12、关于接口哪个正确?
()
A、接口和抽象类是同一回事
B.一个类只能实现一个接口
C.接口间不能有继承关系
D.实现一个接口必须实现接口的所有方法
13、关于静态成员下面说法错误的是()
A、静态成员是最终成员变量
B、静态成员属于类成员
C、定义静态成员使用的关键字是static
D、静态成员必须创建对象时才能使用
14、以下关于继承的叙述正确的是()。
A、在Java中一个类只能实现一个接口
B、在Java中类只允许单一继承
C、在Java中一个类不能同时继承一个类和实现一个接口
D、在Java中接口只允许单一继承
15、要使某个类能被同一个包中的其他类访问,但不能被这个包以外的类访问,则()
A.让该类不使用任何关键字
B.使用private关键字
C.使用final关键字
D.使用protected关键字
16、下列哪个代码替换程序中的【代码】不会导致编译错误?
BCD
(A)protectedintgetNumber(){return100;}
(B)intgetNumber(){return100;}
(C)publicintgetNumber(){return100;}
(D)intgetNumber(){return’a’+’b’;}
interfacec1assAAA{
abstractintgetNumber();
}
classBBBimplementsAAA{
【代码】
}
17、void的含义:
()
A.没有意义B.方法体为空
C.方法没有返回值D.定义方法时必须使用
18、覆盖与重载的关系是 ( )
A、覆盖方法可以不同名,而重载方法必须同名
B.覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中
C.final修饰的方法可以被覆盖,但不能被重载
D.覆盖与重载是同一回事
19、下列类声明错误的有?
(A)finalabstractclassA
(B)finalclassA
(C)protectedclassA
(D)publicclassA
20、下列E类的类体中哪个【代码】是错误的?
classE{
floatx;//【代码1】
longy=(int)x;//【代码2】
publicvoidf(intn){
doublem;//【代码3】
doublet=n;//【代码4】
}
}
21、下列A类的类体中哪些【代码】是错误的?
classA{
intx=100;//【代码1】
staticlongy;//【代码2】
y=200;//【代码3】
publicvoidf(){
y=300;//【代码4】
}
publicstaticvoidg(){
x=-23;//【代码5】
}
}
22、下列A类的类体中哪些【代码】是错误的?
classTom{
privateintx=120;
protectedinty=20;
intz=11;
privatevoidf(){
x=200;
System.out.println(x);
}
voidg(){
x=200;
System.out.println(x);
}
}
publicclassA{
publicstaticvoidmain(Stringargs[]){
Tomtom=newTom();
tom.x=22;//【代码l】
tom.y=33;//【代码2】
tom.z=55;//【代码3】
tom.f();//【代码4】
tom.g();//【代码5】
}
}
23、下列叙述哪些是正确的?
(A)final类不可以有子类。
(B)abstract类中只可以有abstract方法。
(C)abstract类中可以有非abstract方法,但该方法不可以用final修饰。
(D)不可以同时用final和abstract修饰一个方法。
24、下列哪个代码替换程序中的【代码】会导致编译错误?
(A)protectedintgetNumber(){return100;}
(B)intgetNumber(){return100;}
(C)publicintgetNumber(){return100;}
(D)publicintgetNumber(){return'a'+'b';}
abstractclassAAA{
abstractprotectedintgetNumber();
}
classBBBextendsAAA{
【代码】
}
25、下列哪个代码替换程序中的【代码】不会导致编译错误?
(A)protectedlonggetNumber(){return20L;}
(B)publicbytegetNurnber(){return10;}
(C)publicintgetNumber(){return(byte)lO;}
(D)publicchargetNumber(){return'A’;}
abstractclassAAA{
abstractprotectedintgetNumber();
}
classBBBextendsAAA{
【代码】
}
二、填空题
1、如果将类MyClass声明为public,它的文件名称必须是(MyClass.java)才能正常编译。
2、Java程序中的单行注释符是(//),多行注释符是(/**/)。
3、Java中布尔类型的常量有两种,它们是(true)和(false)。
4、Java中用于定义小数的关键字有两个:
(float)和(double),后者精度高于前者。
5、Java中用于两个数相等比较的运算符是:
(==),用于不相等比较的运算符是(<>)。
6、在Java中定义一个字符串类型的变量str的语句是:
(Stringstr;),定义一个具有10个元素的整型数组a的语句是:
(int[]arr=newint[10];)。
7、导入mypackage包中的所类的命令是(importmypackage.*;)。
8、当声明一个数组intarr[]=newint[5];时,这代表这个数组所保存的变量类型是(int),数组名是(arr),数组的大小为(5),数组元素下标的使用范围是(0到4)。
9、假设x=13,y=4,则表达式x%y!
=0的值是(true),其数据类型是(boolean)。
10、异常处理是由(try)、(catch)和finally块三个关键所组成的程序块。
11、导入mypackage包中的类myclass的命令是(importmypackage.myclass;)。
12、使用命令行敲入javac命令,其含义是(编译java文件,得到字节码文件)。
13.定义类的保留字是(class),定义接口的保留字是(interface)。
14.构造方法是一种特殊的成员方法,构造方法名与(类名)相同。
15.Java语言只允许单继承,指每个类只能有一个(父类)。
16.Java源程序的扩展名是(.java),经过编译后的程序的扩展名是(.class)。
17、如果将类MyClass声明为public,它的文件名称必须是(Myclass.java)才能正常编译。
三、程序阅读题
1、以下程序的输出结果为_Peteris17yearsold!
___。
publicclassPerson{
Stringname;
intage;
publicPerson(Stringname,intage){
this.name=name;
this.age=age;
}
publicstaticvoidmain(String[]args){
Personc=newPerson("Peter",17);
System.out.println(c.name+"is"+c.age+"yearsold!
");
}
}
2、以下程序的输出结果为__课程号:
101课程名:
ASP学分:
3___。
publicclassCourse{
privateStringcNumber;
privateStringcName;
privateintcUnit;
publicCourse(Stringnumber,Stringname,intunit){
cNumber=number;
cName=name;
cUnit=unit;
}
publicvoidprintCourseInfo(){
System.out.println("课程号:
"+cNumber+"课程名:
"+cName+"学分:
"+cUnit);
}
}
classCourseTest{
publicstaticvoidmain(String[]args){
Coursec;
c=newCourse("101","ASP",3);
c.printCourseInfo();
}
}
3、以下程序的输出结果为__汤姆猫体重:
20.0斤___。
publicclassTom{
privatefloatweight;
privatestaticStringname;
publicvoidsetWeight(floatweight){
this.weight=weight;
}
privatevoidout(){
System.out.println(name+"体重:
"+weight+"斤");
}
publicstaticvoidmain(String[]args){
Tom.name="汤姆猫";
Tomcat=newTom();
cat.setWeight(20);
cat.out();
}
}
4、以下程序的输出结果_姓名:
Tom年龄:
15家庭住址:
金水区电话:
66123456学校:
九中_。
publicclassFather{
Stringname,address,tel;
intage;
publicFather(Stringname,intage){
this.name=name;
this.age=age;
}
voidout(){
System.out.print("姓名:
"+name);
System.out.print("年龄:
"+age);
}
voidoutOther(){
System.out.print("家庭住址:
"+address);
System.out.print("电话:
"+tel);
}
}
classSonextendsFather{
Stringschool;
publicSon(Stringname,intage){
super(name,age);
}
voidout(){
super.out();
super.outOther();
System.out.println("学校:
"+school);
}
publicstaticvoidmain(Stringargs[]){
Sonson=newSon("Tom",15);
son.address="金水区";
son.school="九中";
son.tel="66123456";
son.out();
}
}
5、下列程序的运行结果是__12345____。
publicclassMyClass{
inta[]={1,2,3,4,5};
voidout(){
for(intj=0;j System.out.print(a[j]+""); } publicstaticvoidmain(String[]args){ MyClassmy=newMyClass(); my.out(); } } 6.运行下面的程序,输出并记录结果。 classFather{ privateintf1,f2; publicFather(intf1,intf2){ this.f1=f1;this.f2=f2; } publicvoidprint(){ System.out.println("f1="+f1+"f2="+f2); } } classChildextendsFather{ privateintc1,c2; publicChild(intf1,intf2,intc1,intc2){ super(f1,f2); this.c1=c1;this.c2=c2; } publicvoidprint(){ super.print(); System.out.println("c1="+c1+"c2="+c2); } } //增加的测试代码 publicclassXT003302{ publicstaticvoidmain(String[]args){ Childc=newChild(1,2,3,4); c.print(); } } 输出: f1=1f2=2 c1=3c2=4 7.请说出A类中System.out.println的输出结果。 classB{ intx=100,y=200; publicvoidsetX(intx){ x=x; } publicvoidsetY(inty){ this.y=y; } publicintgetXYSum(){ returnx+y; } } publicclassA{ publicstaticvoidmain(Stringargs[]){ Bb=newB(); b.setX(-100); b.setY(-200); System.out.println("sum="+b.getXYSum()); } } sum=-100 8.请说出A类中System.out.println的输出结果。 publicclassA{ publicstaticvoidmain(Stringargs[]){ Bb=newB(20); add(b); System.out.println(b.intValue()); } publicstaticvoidadd(Bm){ intt=777; m.setIntValue(t); } } classB{ intn; B(intn){ this.n=n; } publicvoidsetIntValue(intn){ this.n=n; } intintValue(){ returnn; } } 777 9.请说出A类中System.out.println的输出结果。 publicclassA{ publicstaticvoidmain(Stringargs[]){ Integerinteger=newInteger(20); add(integer); System.out.println(integer.intValue()); } publicstaticvoidadd(Integerm){ intt=777; m=newInteger(t); } } 20 10.请说出A类中System.out.println的输出结果。 classB{ intn; staticintsum=0; voidsetN(intn){ this.n=n; } intgetSum(){ for(inti=1;i<=n;i++) sum=sum+i; returnsum; } } publicclassA{ publicstaticvoidmain(Stringargs[]){ Bb1=newB(),b2=newB(); b1.setN(3); b2.setN(5); ints1=b1.getSum(); ints2=b2.getSum(); System.out.println(s1+s2); } } 21 11.请说出E类中System.out.println的输出结果。 classA{ doublef(doublex,floaty){ returnx+y; } doublef(floatx,floaty){ returnx*y; } } publicclassE{ publicstaticvoidmain(Stringargs[]){ Aa=newA(); System.out.println("**"+a.f(10,10)); System.out.println("##"+a.f(10.0,10.0F)); } } **100.0 ##20.0 12.请说出E类中System.out.println的输出结果。 classA{ doublef(doublex,doubley){ returnx+y; } } classBextendsA{//重载 doublef(intx,inty){ returnx*y; } } publicclassE{ publicstaticvoidmain(Stringargs[]){ Bb=newB(); System.out.println(b.f(3,5)); System.out.println(b.f(3.0,5.0)); } } 15.08.0 13.请说出E类中System.out.println的输出结果。 c1assA{ doublef(doublex,doubley){ returnx+y; } staticintg(intn){ returnn*n; } } classBextendsA{ doublef(doublex,doubley){//重写 doublem=super.f(x,y); returnm+x*y; } staticintg(intn){ intm=A.g(n); returnm+n; } } publicclassE{ publicstaticvoidmain(Stringargs[]){ Bb=newB(); System.out.println(b.f(10.0,8.0)); System.out.println(b.g(3)); } } 98.012 14.请说出E类中System.out.printf的输出结果。 interfaceComputer{ intcomputer(intx,inty); } abstractclassAA{ intcomputer(intx,inty){ returnx-y; } } classBextendsAAimplementsComputer{ publicintcomputer(intx,inty){ returnx+y; } } publicclassE{ publicstaticvoidmain(Stringargs[]){ Computercom=newB(); AAa=newB(); System.out.printf("%d\n",puter(12,10)); System.out.printf("%d\n",puter(15,5)); } 2220 四、简答题 1.如果在D: \MyJavaFi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA语言程序设计 JAVA 语言程序设计 期末考试 试题 题库 整理
![提示](https://static.bdocx.com/images/bang_tan.gif)