Java题库及答案2.docx
- 文档编号:5832641
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:245
- 大小:132.99KB
Java题库及答案2.docx
《Java题库及答案2.docx》由会员分享,可在线阅读,更多相关《Java题库及答案2.docx(245页珍藏版)》请在冰豆网上搜索。
Java题库及答案2
Java程序设计试题及答案
(一)
时间:
2012-02-20
Java程序设计试题及答案
(一)
一、判断题。
判断下列各题是否正确,若正确,在()内打“√”,否则打“×”。
1、Java语言具有较好的安全性和可移植性及与平台无关等特性。
√
2、Java语言的源程序不是编译型的,而是编译解释型的。
√
3、Java语言使用的是Unicode字符集,每个字符在内存中占8位。
×
4、Java语言中不同数据类型的长度是固定的,不随机器硬件不同而改变。
√
6、一个类可以实现多个接口,接口可以实现“多重继承”。
√
7、实现接口的类不能是抽象类。
×
二、不定项选择题。
1、编译JavaApplication源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(B)。
A、java B、class C、html D、exe
2、main方法是Java Application程序执行的入口点,关于main方法的方法首部,以下(B)项是合法的。
A、public staticvoid main()
B、publicstaticvoidmain(String args[])
C、publicstaticintmain(String[]arg)
D、publicvoidmain(String arg[])
3、关于下面代码的说法(C)是正确的?
publicclassExample{
publicstaticvoidmain(String[]args){
int[]arr=newint[10];
System.out.println(arr[1]);
}
}
A、编译时产生错误 B、编译时正确,运行时将产生错误 C、输出零 D、输出空(null)
4、不正确的表达式是(AB)。
A、floata=1.0d; B、Doublea=newDouble(1.0)
C、bytea=(byte)340; D、Bytea=120;
5、定义一个类名为"MyClass.java"的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为(CD)。
A、privateclassMyClassextendsObject B、classMyClassextendsObject
C、publicclassMyClass D、publicclassMyClassextendsObject
6、下列构造方法的调用方式中,正确的是(C)。
A、按照一般方法调用 B、由用户直接调用
C、只能通过new自动调用 D、被系统调用
7、private级的成员可以被哪些对象访问?
C
A、同一包中的其他类 B、仅同一类的私有成员方法
C、仅同一类的所有成员方法 D、所有其他类
8、关于Object类,以下正确的是(ADE)。
A、Object类中定义了一些重要的方法,以方便Java类的使用
B、Object类是一个非常特殊的“虚拟”类,就是说只能从Object类派生出其它类,但不能创建一个Object类的对象,也不能将一个引用变量定义为Object类型
C、如果一个类已经有了父类,那么这个类同时继承了Object类,也就是说这时候这个类实际上有两个父类
D、Object类是所在其他Java类的直接或间接父类
E、Java中的类是单继承的,因此所在的类以Object类为根,形成了棵继承树
9、抽象类与普通类的区别是什么?
C
A、抽象类没有成员变量,只有成员函数
B、抽象类只有成员变量,没有成员函数
C、抽象类中有抽象函数,而普通类的每个函数都是有具体实现的
D、抽象类与普通类没有区别
10、使用接口的通常办法是(D)。
A、将接口数当作静态数据来调用 B、直接调用接口的方法
C、将接口变量作为方法的参数来使用
D、定义一个接口变量,该变量指向实现接口的对象来访问
E、定义一个接口对象,通过对象访问
11、执行下列代码后,哪个结论是正确的String[]s=newString[10]; BD
A、s[10]为"" B、s[9]为null; C、s[0]为未定义 D、s.length为10
12、以下对substring函数的描述中,错误的是()。
BC
A、String和StringBuffer类都可以使用substring函数
B、substring函数返回一个StringBuffer对象
C、substring函数获得从指定位置开始,到指定位置为止的字符串
D、substring函数用于获得字符串的一个子串
13、如果catch块中包括多个异常类,这些异常类的匹配原则是什么?
C
A、接try块中程序执行的顺序,寻找最通用的异常类
B、接try块中程序执行的顺序,寻找能够最精确匹配的类
C、接catch块中异常类的排列顺序,寻找第一个能够匹配的异常对象
D、在catch块中寻找能够最精确匹配的类
14、以下异常中,不属于RuntimeException的是(D)。
A、IndexoutofBoundsException数组以下越界异常
B、NullPointerExcePtion使用未初始化的引用变量
C、ArithmeticException算术异常
D、IllegalAccessException没有足够的权限访问其他类的成员
15、运行下列程序,会产生什么结果。
AD
publicclassMyThreadextendsThreadimplementsRunnable{
publicvoidrun(){
System.out.println("thisisrun()");
}
publicstaticvoidmain(String[]args) {
Threadt=newThread(newMyThread());
t.start();
}
}
A、第一行会产生编译错误 B、第六行会产生编译错误
C、第六行会产生运行错误 D、程序会运行和启动
三、简答题。
1、子类重新定义与父类方法的方法头完全相同的方法,这种情况称为什么?
此时子类对象还能执行父类中原来的方法吗?
答:
这种情况称为方法的覆盖,此时,在子类中已不能找到父类原来的方法,它的内存位置已经被替代。
2、final修饰符可以用来修饰什么?
被final修饰符修饰后有何特点?
答:
final修饰符可用来修饰类、属性、方法和终结器。
被final修饰符修饰的类没有子类。
被final修饰符修饰的属性在程序整个执行过程中都不能改变。
被final修饰符修饰的方法是功能和内部语句不能更改的最终方法。
被final修饰符修饰的终结器(以称析构器——finalize()方法,是在对象被删除前进行收尾工作的方法)也是不能更改的。
3、试写出一个语句创建一个名为myPackage的包,这个语句应该放在程序的什么位置?
packageMyPackage;
应该在程序第一句。
四、编程题。
1、打印出所有的“水仙花数”。
所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。
例如:
153是一个“水仙花数”,因为153=13+53+33。
#include
intmain()
{
//所谓水仙花数是指一个三位数,其各位数字立方和等于该数
inti;
inta=0,b=0,c=0;//a表示百位上的数,b表示十位上的数,c表示个位上的数,
printf("打印三位数的所有水仙花数\n");
for(i=100;i<1000;i++)
{
a=i/100;
b=i/10;
c=i;
if(i==a*a*a+b*b*b+c*c*c)
{
printf("%d\n",i);
}
}
return0;
}
2、编程创建一个Cube类,在其中定义三个变量表示一个立方体的长、宽和高,定义一个构造方法对这三个变量进行初始化,然后定义一个方法求立方体的体积。
创建一个对象,求给定尺寸的立方体的体积。
publicclassBox
{
doublelength;//长
doublewidth;//宽
doubleheight;//高
publicBox()
{//构造函数
length=0;
width=0;
height=0;
}
publicvoidsetLength(doublelength)
{//设置长
this.length=length;
}
publicdoublegetLength()
{//得到长
returnlength;
}
publicvoidsetWidth(doublewidth)
{//设置宽
this.width=width;
}
publicdoublegetWidth()
{//得到宽
returnwidth;
Java程序设计试题及答案
(二)
时间:
2012-02-20
Java程序设计试题及答案
(二)
一、判断题。
判断下列各题是否正确,若正确,在()内打“√”,否则打“×”。
1、JavaApplication程序中,必有一个主方法main(),该方法有没有参数都可以。
×
2、Java程序中不区分大小写字母。
×
3、已知bytei=(byte)127; i=i+1;这两个语句能被成功编译。
×
4、调用this或super构造方法的语句必须放在第一条语句。
√
5、创建对象时系统将调用适当的构造方法给对象初始化。
√
6、对象可作方法参数,对象数组不能作方法参数。
×
二、不定项选择题。
1、Java程序的编程与运行分几个阶段,下面的阶段描述中正确的是(BE)。
A、Java编译器将源文件编译为二进制的目标码文件
B、连接软件将目标码文件连接为最终的执行文件
C、Java虚拟机运行连接后的可执行文件,将它们翻译为硬件能够理解的机器语言
D、目标码无需连接,可以直接由Java虚拟机执行
E、Java虚拟机解释目标文件,并把它们翻译为硬件能够理解的机器语言
2、执行一个Java程序“FirstApp”的方法是(B)
A、直接双击编译好的Java目标码文件执行 B、运行“javacFirstApp.class”
C、运行“javaFirstApp.java” D、运行“javaFirstApp”
3、按照Java的标识符命名规范,下列表示一个类的标识符正确的是(B)。
A、Helloworld B、HelloWorld C、helloworld D、helloWorld
4、下列叙述中,正确的是(A)。
A、Java语言的标识符是区分大小写的
B、源文件名与public类名可以不相同
C、源文件扩展名为.jar
D、源文件中public类的数目不限
5、指出下列哪个方法不是publicvoidadd(inta){}的重载方法。
(A)
A、publicintadd(inta) B、publicvoidadd(longa)
C、publicvoidadd(inta,intb) D、publicvoidadd(floata)
6、关于缺省级和公开级的类在访问上的差别,描述正确的是(BD)。
A、对于其它包的类,只要用“import”关键字导入,就可以访问到缺省级的类
B、“import”关键字只能导入公开级的类
C、在公开级,不但同一个包里的其它类可以访问这个类,而且其它包里的类也可以访问它
D、缺省级下,只有同一个包内的其它类可以访问这个类,外界不能访问
E、缺省级和公开级的类都能从包外访问到
7、子类如何调用父类带有参数的构造方法?
B
A、子类也创建具有同样参数的方法参数,Java会自动调用父类构造方法
B、子类构造方法的开头用“super”语句调用父类构造方法
C、无法调用
D、创建子类对象时,先调用父类的构造方法,再调用子类的构造方法
8、public的成员变量能够被以下哪些对象访问到?
C
A、所有的对象,但子类只能直接访问,而不能继承父类对象的public组成员
B、所有的对象,但其它包中的对象只能访问少数从句中导出的成员
C、所有的对象,子类可以直接访问,也可以继承父类对象的public组成员
D、所有的对象
E、所有的对象,但子类不能访问其它包中的父类对象的public组成员
9、当父类的引用变量指向子类对象时,对于同名的方法调用哪个?
A
A、调用子类的方法 B、先调用父类的方法再调用子类的方法
C、调用父类的方法 D、先调用子类的方法再调用父类的方法
10、关于多态性,以下描述中正确的是(D )。
A、多态性就是方法的覆盖 B、多态性就是方法重载
C、多态性只存在于同名的成员变量之间
D、多态性是指按引用变量指向的对象,而不是引用变量本身的类型来决定调用哪个方法
11、以下关于字符串函数的描述中,正确的是( C)。
A、delete函数用于删除整个字符串
B、replace函数的作用是替换一段子串
C、setCharAt函数的作用是将String或StringBuffer字符串的某个字符替换
D、insert函数的作用是在字符串的某个位置插入一个字符
12、以下关于运行期异常的说法中,错误的是(AD)。
A、运行期异常不需要在函数定义的throws部分给出
B、在程序运行中,如发生运行期异常会被自动抛出函数
C、运行期异常必须用try、catch块捕获
D、RuntimeException是各种在正常运行情况下可以被Java虚拟机抛出的异常的父类
13、以下关于捕获的原则中,错误的是(D)。
A、Exception类必须出现,而且必须作为catch块中第一个匹配的类
B、先列出具体的异常类,后列出通用的异常类
C、先列出子类,后列出父类
D、RuntimeException可以不被捕获,Java会自动处理运行期的异常
三、简答题(每题5分,共20分)。
1、阅读下面的程序并写出类MyClass3的所有成员,并写明它们定义自哪里。
classMyClass1{
privateintpro11;
doublepro12;
}
classMyClass2extendsMyClass1{
privatedoublepro12;
intpro21;
}
classMyClass3extendsMyClass2{
privateintpro21;
doublepro31;
}
2、创建接口使用什么关键字?
接口可以有父接口吗?
试书写语句创建—个名为MyInterface的接口,它是继承了MySuperInterface1和MySuperInterface2两个接口的子接口。
答:
创建接口使用关键字Interface。
接口可以有父接口。
InterfaceMyInterfaceextendsMySuperInterface,MySuperInterface2
四、编程题(每题10分,共30分)。
1、编写一个方法,实现对数组元素由大到小排列。
#include
#include
usingnamespacestd;
intmain()
{
voidsort(intx[],intn);//函数声明
intn;
cin>>n;//数组长度由用户输入
int*a=newint[n];//动态分配数组的长度
if(a==NULL)
{
cout<<"Error,CannotAllocateMemory!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 题库 答案