java程序的设计试题库完整.docx
- 文档编号:25585613
- 上传时间:2023-06-10
- 格式:DOCX
- 页数:88
- 大小:101.64KB
java程序的设计试题库完整.docx
《java程序的设计试题库完整.docx》由会员分享,可在线阅读,更多相关《java程序的设计试题库完整.docx(88页珍藏版)》请在冰豆网上搜索。
java程序的设计试题库完整
《Java语言程序设计基础教程》
练习思考题参考答案
第1章Java程序设计概述
1.1单项选择题
1.编译JavaApplication源文件将产生相应的字节码文件,扩展名是什么
A..javaB..class
C..htmlD..exe
解答:
B
2.Java语言具有许多优点和特点,下列选项中,哪个反映了Java中"一次编译,随处运行"的特点。
A.简单性B.平台无关性
C.面向对象性D.安全性
解答:
B
3.Java语言具有许多优点和特点,下列选项中,哪个反映了Java中并行机制的特点。
A.多线程B.平台无关性
C.面向对象性D.安全性
解答:
A
4.在Java语言中,下列哪些语句关于内存回收的说明是正确的?
A.程序员必须创建一个线程来释放内存;
B.内存回收程序负责释放无用内存;
C.内存回收程序允许程序员直接释放内存;
D.内存回收程序可以在指定的时间释放内存对象
解答:
B
5.一个Java源文件中最多只能有多少个public类。
A.1个B.2个
C.3个D.任意多个
解答:
A
6.下面哪一个不是Java语言所具有的特点。
A.没有全局变量,在类的定义外部没有任何的变量定义;
B.不直接支持指针操作,而使用更安全的引用类型;
C.支持子类对父类的多继承;
D.具有自动垃圾收集功能;
解答:
C
7.下面哪一个不是Java开发工具包JDK的组成部分。
A.Java的编译器;
B.Java的解释器;
C.Java的API继承类库;
D.Eclipse开发工具;
解答:
C
8.JDK提供的编译器是〔〕。
A.java.exeB.javac.exe
C.javap.exeD.javaw.exe
解答:
B
9.作为Java应用程序入口的main方法,其声明格式可以是〔〕
A.publicvoidmain
B.publicstaticvoidmain
C.publicstaticvoidMain
D.publicintmain
解答:
B
10.下列说法正确的是〔A〕
A、JAVA程序的main方法必须写在类里面
B、JAVA程序中可以有多个main方法
C、JAVA程序中类名必须与文件名一样
D、JAVA程序的main方法中如果只有一条语句,可以不用{}<大括号>括起来
11.下列哪些语句关于Java内存回收的说明是正确的?
〔B〕
A、程序员必须创建一个线程来释放内存
B、内存回收程序负责释放无用内存
C、内存回收程序允许程序员直接释放内存
D、内存回收程序可以在指定的时间释放内存对象
1.2填空题
1、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。
解答:
编辑源程序、编译生成字节码和解释运行字节码
2、使用Java编译器___javac____.exe编译源文件得到字节码文件。
3、Java应用程序必须通过Java解释器__JAVA__.exe来解释执行其字节码文件。
4、如果Java源文件中有一个类是public类,那么源文件的名字必须与这个类的名字完全_相同______,扩展名是.java。
5、Java应用程序总是从主类的____main___方法开始执行.
1.3简答题
13.简述Java程序的开发过程?
〔1〕使用一个文字编辑器,编写源文件。
〔2〕使用java编译器,编译源文件得到字节码文件。
〔3〕解释运行字节码,分两种java应用程序必须通过java解释器来解释执行,java小应用程序必须使用解释器和浏览器运行程序。
1.什么是Java虚拟机?
为什么Java被称作是"平台无关的编程语言"?
解答:
Java虚拟机是一个可以执行Java字节码的虚拟机进程。
Java源文件被编译成能被Java虚拟机执行的字节码文件。
Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。
Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。
3.Java语言的关键特点有哪些?
解答:
简单性
平台无关性
面向对象性
安全性
分布式
多线程
动态性
1.4综合题
第2章Java基本的程序设计结构
2.1单项选择题
1、下面哪一项在java中是非法的标识符?
〔〕
A.$user
B.point
C.You&me
D._endline
解答:
C
2、若有定义inta=9,b=6;那么a>b的值是:
〔〕
A.0B.1
C.falseD.true
解答:
D
3、执行完以下代码int[]x=newint[25];后,以下说明正确的是:
〔〕
A.x[24]为0B.x[24]未定义
C.x[25]为0D.x[0]为空
解答:
A
4、Java应用程序的main方法中有以下语句,则输出的结果是〔〕。
int[]x={2,3,-8,7,9};
intmax=x[0];
for
if
max=x[i];
}
System.out.println
A.2B.-8
C.7D.9
解答:
D
5、设x=1,y=2,z=3,则表达式y+=z--/++x的值是〔〕
A.3B.3.5
C.4D.5
解答:
A
5、执行System.out.println<5/4>,这条代码的输出结果是〔〕
A.1B.1.25
C.1.5D.0
解答:
A
6、下列语句有错误的是:
〔〕
A.int[]a;B.int[]b=newint[10];
C.intc[]=newint[];D.intd[]=null;
解答:
C
7、下列语句有错误的是:
〔〕
A.inta[][]=newint[5][5];B.int[][]b=newint[5][5];
C.int[]c[]=newint[5][5];D.int[][]d=newint[5,5];
解答:
D
8、下列哪一个不属于Java中的8种基本数据类型〔〕
A.double;B.char;
C.int;D.String;
解答:
D
9、以下数据类型存储空间最大的是〔〕。
〔A〕byte〔B〕long〔C〕float〔D〕char
解答:
B
10、System.out.println<"5"+2>;的输出结果应该是〔〕。
A52B7
C2D5
答案:
A
11.在类的定义中可以有两个同名方法,每个方法的参数不同,这种现象称为方法〔D〕。
〔A〕封装〔B〕继承〔C〕覆盖〔D〕重载
12.java中定义字符串Strings="pzhu",下面操作可以取得字符串长度的是〔〕。
A.s.length<>B.s.lengthC.s.size<>D.length
解答:
A
13.指出下列程序运行的结果〔B〕<很难>
publicclassExample{
Stringstr=newString<"good">;
char[]ch={'a','b','c'};
publicstaticvoidmain
Exampleex=newExample<>;
ex.change
System.out.print
System.out.print
}
publicvoidchange
str="testok";
ch[0]='g';
}
}
A、goodandabc
B、goodandgbc
C、testokandabc
D、testokandgbc
14.下面代码的运行结果为:
〔C〕<较难>
importjava.io.*;
importjava.util.*;
publicclassfoo{
publicstaticvoidmain
Strings;
System.out.println<"s="+s>;
}
}
A代码得到编译,并输出"s="
B代码得到编译,并输出"s=null"
C由于Strings没有初始化,代码不能编译通过
D代码得到编译,但捕获到NullPointException异常
15.关于以下程序段,正确的说法是〔C〕
1.Strings1="abc"+"def";
2.Strings2=newString〔s1〕;
3.if〔s1==s2〕
4.System.out.println<"==succeeded">;
5.if
6.System.out.println<".equals<>succeeded">;
A、行4与行6都将执行
B、行4执行,行6不执行
C、行6执行,行4不执行
D、行4、行6都不执行
16.Javaapplication中的主类需包含main方法,main方法的返回类型是什么?
〔D〕A、intB、float
C、doubleD、void
17.为一个boolean类型变量赋值时,可以使用方式
A、boolean=1;
B、booleana=<9>=10>;
C、booleana="真";
D、booleana==false;
18.表达式<11+3*8>/4%3的值是
A、31B、0C、1D、2
19.运算符优先级别排序正确的是〔A〕〔太难〕
A、由高向低分别是:
<>、!
、算术运算符、关系运算符、逻辑运算符、赋值运算符;
B、由高向低分别是:
<>、关系运算符、算术运算符、赋值运算符、!
、逻辑运算符;
C、由高向低分别是:
<>、算术运算符、逻辑运算符、关系运算符、!
、赋值运算符;
D、由高向低分别是:
<>、!
、关系运算符、赋值运算符、算术运算符、逻辑运算符;
20.下列值不为true的表达式有〔C〕。
A、"john"=="john"
B、"john".equals<"john">
C、"john"="john"
D、"john".equals
21、下面的方法,当输入为2的时候返回值是多少?
〔D〕<很难>
publicstaticintgetValue
intresult=0;
switch{
case1:
result=result+i;
case2:
result=result+i*2;
case3:
result=result+i*3;
}
returnresult;
}
A0B2C4D10
答案:
D
解析:
注意这里case后面没有加break,所以从case2开始一直往下运行。
22、下面有关for循环的描述正确的是〔A〕
A、for循环体语句中,可以包含多条语句,但要用大括号括起来
B、for循环只能用于循环次数已经确定的情况
C、在for循环中,不能使用break语句跳出循环
D、for循环是先执行循环体语句,后进行条件判断
23、score是一个整数数组,有五个元素,已经正确初始化并赋值,仔细阅读下面代码,程序运行结果是〔B〕
temp=score[0];
for
if
temp=score[index];
}
}
A.求最大数B.求最小数C.找到数组最后一个元素D.编译出错
26、
2.2填空题
1、Java语言是一种完全的_面向对象_程序设计语言
2、Strings1="China";intn=s1.length<>;n的值为_5__
3、在Java语言中,基本数据类型包括:
____整数类型、____浮点类型、____字符类型_和____布尔类型
17、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用__2___字节内存空间,这样,无论是中文字符还是英文字符,都是占用__2___字节内存空间。
18、设x=2,则表达式
20、设有数组定义:
intMyIntArray[]={10,20,30,40,50,60,70};
则执行以下几个语句后的输出结果是:
120。
intMyIntArray[]={10,20,30,40,50,60,70};
ints=0;
for
if
s+=MyIntArray[i];
System.out.println;
21、数组对象的长度在数组对象创建之后,就__不会____改变。
数组元素的下标总是从___0___开始。
22、对于数组int[][]t={{1,2,3},{4,5,6}}来说,t.length等于__2___,t[0].length等于__3____。
2.3简答题
1、Java的基本数据类型有哪8种,每种类型的内存空间分别是多少。
2.4综合题
26、编程计算10~20的整数的平方值,将结果保存在一个数组中。
27、编写一个程序使之从键盘读入10个整数存入整型数组a中,并输出这10个整数的最大值和最小值。
importjava.util.Scanner;
publicclasslianxi30{
publicstaticvoidmain
Scannertemp;
float[]sum=newfloat[11];
floatmax,min;
for
System.out.println<"请输入第一个数字<回车结束>:
">;
temp=newScanner
Stringa=temp.nextLine<>;
sum[i]=Integer.parseInt;//获取输入的字符串
}
max=sum[0];
min=sum[0];
for
{
if
max=sum[j];
elseif
min=sum[j];
}
System.out.println
System.out.println
}
}
31、如果我国经济以每年10%的速度保持稳定增长,请编写一个程序,计算每年达到多少,多少年可以实现总量翻两番。
classexA4_1{
publicstaticvoidmain
inta=0;
doublei=0.10,sum=1;
while
sum=*sum;
a++;
System.out.println<"第"+a+"年达到"+sum>;
}
System.out.println<"需要"+a+"年实现两番">;
}
}
第3章类和对象
3.1单项选择题
1、下列关于变量的叙述哪个是错的?
〔〕
A.实例变量是类的成员变量。
B.在方法中定义的局部变量在该方法被执行时创建。
C.实例变量用关键字static声明。
D.局部变量在使用前必须被初始化。
解答:
C
2、在Java语言中,下列哪个包是编译器自动导入的?
〔〕
A.java.appletB.java.lang
C.java.ioD.java.awt
解答:
B
6、不允许作为类及类成员的访问控制符的是〔〕。
A.publicB.private
C.staticD.protected
解答:
C
7、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为〔〕。
A、staticvoidmethod<>B、publicvoidmethod<>
C、finalvoidmethod<>D、abstractvoidmethod<>
解答:
A
8、可以在下面代码段pointx处写入的是?
〔〕
//pointx
publicclassInteresting{
//dosomething
}
A.Stringstr;
B.staticintPI=3.14;
C.publicclassMyClass{//dootherthing…}
D.importjava.awt.*;
解答:
D
9、Java提供的许多类在不同的包中,使用下面哪个语句可以引入包中的类。
A.packageB.include
C.importD.add
解答:
C
11、已知A类被打包在packageA,B类被打包在packageB,且B类被声明为public,且有一个成员变量x被声明为protected控制方式。
C类也位于packageA包,且继承了B类。
则以下说法正确的是:
〔〕
A、A类的实例不能访问到B类的实例
B、A类的实例能够访问到B类一个实例的x成员
C、C类的实例可以访问到B类一个实例的x成员
D、C类的实例不能访问到B类的实例
解答:
C〔太难〕
13、在Java中,关于final关键字的说法正确的是〔〕
A、如果修饰变量,则一旦赋了值,就等同一个常量。
B、如果修饰类,则该类只能被一个子类继承。
C、如果修饰方法,则该方法不能在子类中被覆盖。
D、如果修饰方法,则该方法所在的类不能被继承。
解答:
A,C
14、关于构造方法以下说法错误的是
〔A〕构造方法名必须与类名一致〔B〕构造方法可以重载
〔C〕构造方法是通过new来调用〔D〕每个类都必须编写构造方法代码
15、关于类的定义以下说法错误〔B〕。
〔A〕类定义使用class关键字〔B〕每个类中必须有一个main方法
〔C〕一个包可以包含多个类〔D〕java中所有类都是Object类的子类
16、在创建对象时必须〔C〕
A> 先声明对象,然后才能使用对象
B> 先声明对象,为对象分配内存空间,然后才能使用对象
C> 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象
D> 上述说法都对
17、在调用方法时,若要使方法改变实参的值,可以〔B〕
A>用基本数据类型作为参数B>用对象作为参数
C>A和B都对D>A和B都不对
18、关于以下程序代码的说明正确的是〔D〕
classHasStatic{
privatestaticintx=100;
publicstaticvoidmain
HasStatichs1=newHasStatic<>;
hs1.x++;
HasStatichs2=newHasStatic<>;
hs2.x++;
hs1=newHasStatic<>;
hs1.x++;
HasStatic.x--;
System.out.println<"x="+x>;
}
}
A、5行不能通过编译,因为引用了私有静态变量
B、10行不能通过编译,因为x是私有静态变量
C、程序通过编译,输出结果为:
x=103
D、程序通过编译,输出结果为:
x=102
19、以下关于构造函数的描述错误的是〔A〕。
A、构造函数的返回类型只能是void型。
B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
20、Java中,在如下所示的Test类中,共有〔C〕个构造方法。
publicclassTest{
privateintx;
publicTest<>{x=35;}
publicvoidTest
publicTest
}
A、0B、1C、2D、3
21、在Java中,关于构造方法,下列说法错误的是
A、构造方法的名称必须与类名相同
B、构造方法可以带参数
C、构造方法不可以重载
D、构造方法绝对不能有返回值
22、在Java语言中,下列关于类的继承的描述,正确的是〔B〕。
A、一个类可以继承多个父类
B、一个类可以具有多个子类
C、子类可以使用父类的所有方法
D、子类一定比父类有更多的成员方法
23、分析选项中关于Java中this关键字的说法正确的是〔A〕
A、this关键字是在对象内部指代自身的引用
B、this关键字可以在类中的任何位置使用
C、this关键字和类关联,而不是和特定的对象关联
D、同一个类的不同对象共用一个this
24、在Java接口中,下列选项中有效的方法声明是〔A〕。
A、publicvoidaMethod<>;
B、publicfinalvoidaMethod<>;
C、protectedvoidaMe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 程序 设计 试题库 完整
![提示](https://static.bdocx.com/images/bang_tan.gif)