计算机程序设计员(java)四级复习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一体化考核复习题
Java2编程技术基础
一、单项选择题(选择一个正确答案,将相应的字母填入题内的括
号中)
1.以下几项,编译正确的是()。
A.double f=1.3f;
B.char c=’\u0ffff’;
C.boolean b=null;
D.int i=1E3;
2. 编译如下代码会出现的情况是()。
class MyClass{
public static void main(String args[]){
mthd(args);
}
public void mthd(String[] args){
System.out.println(args.length);
}
}
A.main方法声明有错
B.无法从静态上下文中引用非静态方法mthd
C.mthd方法参数类型不匹配
D.语句“System.out.println(args.length);”有错
3. 以下几项编译正确的是()。
A. import java.util.Date;
package mypackage.*;
class Myclass{}
B. package mypackage.*;
import java.util.Date;
class MyClass{}
C. /*comment*/
package mypackage;
import java.util.*;
class MyClass{}
D. import java.util.*;
package mypackage;
class MyClass{}
4. 对于byte类型的可表示范围,说法正确的是()。
A. 从0到255
B. 从-128到127
C. 从-256到255
D. 根据java虚拟机的具体实现而定
5. 代码如下:
public class MyClass{
public static void main(String args[])
{
System.out.println(args[2]);
}
}
运行java MyClass Hello World将输出的结果是()。
A.MyClass
B.Hello
C.World
D.抛出异常:“ng.ArrayIndexOutOfBoundsException:2”
6. 编绎运行如下代码的结果是()。
public class MyClass{
static int i;
public static void main(String args[]){
System.out.pritnln(“i=”+i);
}
}
A.i=0;
B.i=1;
C.i=null;
D.编译错
7. 编译运行如下代码的结果是()。
public class MyClass{
public static void main(Stirng args[]){ int anar[]=new int[]{0,1,2};
System.out.println(anar[1]);
}
}
A.零
B.1
C.编译错
D.运行异常
8. 编译运行如下代码的结果是()。
public class MyClass{
public static void main(String args[]){ int anar[]=new int[5];
System.out.println(++anar[0]);
}
}
A.编译错
B.运行异常
C.1
D.null
9. 编译运行如下代码的结果是()。
public class MyClass{
public static void main(String args[]){ int i=1;
switch(i){
case 0:
System.out.print(“zero”);
break;
case 1:
System.out.print(“one”);
case 2:
System.out.print(“two”);
default:
System.out.print(“default”);
}
}
}
A.one two default
B.one two
C.one default
D.default
10. 以下语句,()输出为-9.0。
A. System.out.println(Math.floor(-9.9))
B. System.out.println(Math.round(-9.9))
C. System.out.println(Math.ceil(-9.9))
D. System.out.println(Math.abs(-9.9))
11. 编译运行如下代码可能产生的结果是()。
public class MyClass{
public static void main(String args[]){
String s=”like icecream?”;
byte iBegin=5;
byte iEnd=7;
System.out.println(s.substring(iBegin,iEnd));
}
}
A.ice
B.ic
C.icecrea
D.编译错误
12. 如何寻找字串“java“中“V”字符的位置?()
A. “java”[2];
B. “java”.charAt(‘v’);
C. “java”.indexOf(‘v’);
D. “java”.valueOf(‘v’);
13. 运行如下代码的结果是()
System.out.println(8 | 4);
A.4
B.8
C.12
D.2
14. 事件监听接口中的方法的返回值是()。
A. int
B. String
C. void
D. Object
15. 编译运行如下代码,可能产生的结果是()。
class MyClass implements Runnable{
int i=0;
public void run(){
while(i<5){
System.out.print(++i);
}
}
public static void main(String args[]){
new Thread(new MyClass()).start();
}
}
A.编译错
B.运行异常
C.运行但无输出
D.打印输出12345
16. 编译运行如下代码,可能产生的结果是()。
public class MyClass extends Thread{
public static void main(String args[]){
String s=”ava”;
MyClass.amethod(s);
}
static void amethod(String s){
char c=’J’;
c+=s;
System.out.println(c);
}
}
A.输出“Java”
B.输出“ava”
C.输出“J”
D.编译错
17. 给定如下代码,为使背景色为Green,在/**/处应如何设置?()import java.awt.*;
public class MyClass{
public static void main(Stirng args[]){
Frame f=new Frame();
f.setSize(300,200);
/**/
f.setVisible(true);
}
}
A.f.setBgColor(Color.GREEN);
B.f.setBackground(Color.GREEN);
C.f.setColor(Color.GREEN);
D.Color.set(f,Color.GREEN);
18. 为int型数组iAry中的每个元素正确赋值,如何替换/**/?()void int (int [] iAry){
/**/{
iAry[i]=i;
}
}
A.for(int i=0;i<iAry.length;i++)
B.for(int i=1;i<iAry.length;i++)
C.for(int i=1;i<=iAry.length;i++)
D.for(int i=iAry.length-1;i<=0;i--)
19. 编译运行如下代码可能产生的结果是()
class MyClass{
public static void main(String args[]){
int i=010;
System.out.println(i);
}
}
A.输出010
B.输出10
C.输出8
D.编译错
20. 编译运行如下代码可能产生的结果是()abstract class Base{
abstract public void myfunc();
public static void main(String args[]){
Derived a=new Derived();
a.foo();
}
}
class Derived extends Base{
public void myfunc(){
System.out.println(“My Func”);
}
public void foo(){
myfunc();
}
}
A.编译错
B.运行异常
C.运行无输出
D.输出:My Func
22. 编译运行如下代码可能产生的结果是()public class MyClass{
public static void main(String arg){
System.out.println(“Hello World”);
}
}
A.编译错
B.无法运行,找不到main方法
C.运行无输出
D.输出:Hello World
23. 以下不属于java修饰符的有()
A. public
B. void
C. private
D. static
24. 编译运行如下代码可能产生的结果是()class Base{
public final void foo(){
System.out.println(“foo”);
}
}
public class Derived extends Base{
public static void main(String args[]){
Base b=new Base();
b.foo();
}
}
A.编译错
B.运行异常
C.运行无输出
D.输出:foo
25. 编译运行如下代码可能产生的结果是()private class Base{
}
class ABC{
transient int i;
public static void main(String foooooo[]){
}
}
A.编译错:在此Base不能声明为private
B.编译错:i为整型,不能为transient修饰
C.编译错:main方法格式有错
D.正常运行无输出
26.编译运行如下代码可能产生的结果是()
public class MyClass{
public static void main(Stirng args[]){
int [] i=new int[5];
System.out.println(i[5]);
}
}
A.编译错
B.运行异常:数组下标越界
C.运行输出:null
D.运行输出:0
27. 为获出数组iAry的元素个数,正确的java语句是()
A. int len=iAry.length();
B. int len=iAry.length;
C. int len=iAry.size();
D. int len=iAry.size;
28. 对于使用FlowLayout布局管理器,说法正确的是()
A. 加入组件是需指定方位North、South、East、West或Center
B. 创建FlowLayout应该指定有几个单元格
C. 需指定组件的X,Y坐标位置
D. 无须指定,FlowLayout会自行管理组件的布局
29. 编译运行如下代码可能产生的结果是()
public class MyClass{
public static void main(String args[]){
MyClass h=new MyClass();
}
protected MyClass(){
for(int i=0;i<5;i++){
System.out.print(i);
}
}
}
30. 编译运行如下代码可能产生的结果是()public class MyClass{
public static void main(String args[]){
int k=1;
switch(k){
default:
System.out.println(“default”);
break;
case 0:
System.out.println(“zero”);
case 1:
System.out.println(“one”);
break;
}
}
}
31.编译运行如下代码可能产生的结果是()public class MyClass{
int i;
boolean b;
char c=1;
public static void main(String args[]){
new MyClass().amethod();
}
public void amethod(){
System.out.print(i);
System.out.pritn(b);
}
}
A.编译错
B.变量使用前需要初始化
C.c是char类型的,不能赋予int值
D.输出:0false
32. 运行如下代码的结果是()
int i=1;
boolean b=false;
if((b==true)&&((i+=1)==2)){
System.out.println(“true”+i);
}
else{
System.out.println(“false”+i);
}
33. 属于Runnable接口方法的是()
A. start
B. sleep
C. yield
D. run
34.电子商务有许多分类,其中B to G是指()
A. 企业与采购商
B. 企业与消费者
C. 企业与分销商
D. 企业与政府
35.基于SGML的,并能自定义标记的技术是()
A.HTML
B. Javascript
C. XML
D. CGI
36. 鼠标单击按钮事件监听接口ActionLisener的actionPerformed方法返回类型是()。
A. int
B. void
C. double
D. String
37.编译运行如下代码,可能产生的结果是()
class MyClass{
public static void main(String args[]){
int iAry[]=new int[]{0,1,2,3,4};
Integer iWrap0=iAry.length>0?new Integer(iAry[0]):null;
System.out.print(iWrap0);
}
}
A.编译错
B.运行异常
C.输出:0
D.输出:null
38. 编译运行如下代码,可能产生的结果是()
class MyClass{
public static void main(String args[]){
for(int i=0;i>5;i++){
if(i==3) break;
}
System.out.println(“i=”+i);
}
}
A.编译出错
B.运行异常
C.死循环
D.输出:i=3
39. 运行System.out.print(Math.ceil(-3.14));的结果是()
A. 输出:-4.0
B. 输出:-3.0
C. 输出:-3
D. 输出:-4
40.运行System.out.print(3>>2);的结果是()
A. 零
B. 1
C. 2
D. 3
41. 编译运行如下代码,可能产生的结果是()
class MyClass{
int x=2;
public void method(int x){
System.out.print(x++);
}
public static void main(String args[]){
new MyClass().method(1);
}
}
A.编译错
B.运行异常
C.1
D.2
42. 为使方法不被覆盖(即重写)使用关键字为()。
A. abstract
B. static
C. final
D. protected
43. 下列语句中含有语法错误的是()
A. int a[][]=new int [5][5];
B. int [][] b=new int [5][5];
C. int []c[]=new int [5][5];
D. int [][] d=new int[5,5];
44. 下列选项中,可以对编译器返回程序代码的错误进行调试的Java 调试器是()
A. java.exe
B. javadoc.exe
C. jdb.exe
D. javaprof.exe
45. 下列赋值语句中不正确的是()
A. float f=11.1;
B. double d=5.3E12;
C. float d=3.14f;
D. double f=11.1E10f;
46. 下列赋值语句中正确的是()
A. char a=12;
B. int a=12.0;
C. int a=12.0f;
D. int a=(int)12.0;
47. 下列代码中,在编译时可能会有错误的是()
public void modify(){
int i,j,k;
i=100;
while(i>0){
j=i*2;
System.out.println(“The value of j is”+j);
k=k+1;
}
}
A.line4
B.line6
C.line7
D.line8
48. 下列哪个修饰符可以使在一个public类中定义的成员变量只能被同一包中的类访问?()
A. private
B. 无修饰符
C. public
D. protected
49. 在java语言中,下面哪个布局管理器是JApplet的默认布局管理器?()
A. CardLayout
B. BorderLayout
C. GridLayout
D. FlowLayout
50. 下面哪个标识符可以注释多行语句?()
A. /** */
B. //
C. // //
D.//* *//
51. 表达式25%7+3*6的结果为()。
A. 21
B. 22
C. 36
D. 12
52. 当a=5,b=7时,表达式a>b?a-b:b-a的结果为()。
A. -2
B. 2
C. 零
D. 1
53. 指出下面哪个是将一个十六进制赋值给一个long型变量?()
A. long nu=345L
B. long nu=0345
C. long nu=0345L
D. long nu=0X345L
54. 以下对类的声明正确的是()
A. public class A1 extends Applet{}
B. public void class A1{}
C. final abstract class A1{}
D. public class A1 extends ActionListener
55. 如果一个类的设计要求它的某个成员变量不能被外部类直接访问,应该使用下面哪个访问修饰符进行访问控制?()
A. private
B. public
C. protected
D. 没有修饰符
56. 容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?()
A. CardLayout
B. FlowLayout
C. BorderLayout
D. GridLayout
57. 容器Panel缺省使用的布局管理器类是()。
A. CardLayout
B. FlowLayout
C. BorderLayout
D. GridLayout
58. 以下用于抛出异常的关键字是()
A. transient
B. finally
C. throw
D. static
59. Java程序运行入口的main方法返回类型是()。
A. int
B. void
C. boolean
D. static
60. System类在哪个包中?()
A. java.util
B. java.io
C. java.awt
D. ng
61. 下面哪个选项是正确的main方法声明?()
A. public main(String args[])
B. public static void main(String args[])
C. private static void main(String args[])
D. void main()
62. 设计Java Applet程序,用户自定义的Applet子类中,一般需要重载父类的哪个方法来完成画图操作?()
A. start()
B. stop()
C. init()
D. paint()
63. 下面哪个表达式是声明一个含有15个String对象的数组?()
A. char str[]
B. char str[][]
C. String str[]=new String[15]
D. String str[15]
64. 在Java程序中需要告诉编译器使用哪个包中的类,这时需要使用import语句导入,但有一个包是系统自动导入的,不需要使用import 语句,是()
A. java.util
B. java.io
C. java.awt
D. ng
65. 下面关于Applet应用程序开发正确的是()
A. Applet也需要main方法
B. Applet必须继承自java.awt.Applet
C. Applet能访问本地文件
D. Applet程序不需要编译
66.在表达式double d1=Math.log(Math.E)中,变量d1的值为()
A. 1
B. 2
C. 3
D. 零
67. 若程序需要在一个文本框中回显字符*,可采用以下哪个方法?()
A. setText()
B. getText()
C. setEchoChar(char x)
D. setEditable()
68. 应该使用哪个类的方法,用于设置实现日期和时间字段之间的转换?()
A. java.util.Date
B. java.util.Calendar
C. java.text.DateFormat
D. java.util.Random
69. java.awt.paint()方法使用哪种类型的参数?()
A. Graphics
B. Graphics2D
C. String
D. Color
70. 在java中,对象在何种状态下会被回收?()
A. 当没有任何程序再访问一个对象或对象的成员变量时
B. 当对象关系的引用变量消失时
C. 当没有引用变量再指向该对象时
D. 当对象的所有成员函数都执行一遍以后
71. 如果catch块中包括多个异常类,这些异常类的匹配原则是()
A. 接try块中程序执行的顺序,寻找最通用的异常类
B. 接try块中程序执行的顺序,寻找能够最精确匹配的类
C. 在catch块中寻找能够最精确匹配的类
D. 接catch块中异常类的排列顺序,寻找第一个能够匹配的类(也就是做出的异常类对象属于catch块的异常类,或是catch块中的异常类)
72. 小程序的生命周期包括哪些阶段?()
A. 载入,运行,函数阶段
B. 载入,运行,离开,返回,卸载等阶段
C. 运行阶段,停止阶段
D. 下载,载入,运行阶段
73. Jbuilder是什么?()
A. 是用于java程序设计的一套集成化软件开发环境
B. 是一种通用的集成化软件开发环境
C. 是一种新的语言
D. 是一种java平台
74. 简单变量应当如何初始化?()
A. 对于简章变量,只需给它赋值就完成了初始化
B. 简章变量需要单独进行初始化,之后才能使用
C. 引用变量和简单变量都需要用new关键字进行初始化
D. 只有引用变量需要初始化,简单变量可以不初始化
75.在java中如何保证简单变量在使用前一定被初始化过?()
A. java编译器会自动判断,如果一个变量在使用前可能尚未初始化,则编译器会报错,要求程序必须修改
B. java编译器会自动判断,如果一个变量在使用前可能尚未初始化,则编译器会提出警告,编译人员最好能够修改程序,避免此种情况发生
C. 编译人员要确保在使用前一定初始化过,否则会得到不可预料的
结果
D. java程序运行时会自动判断,如果变量在使用时尚未初始化,则自动进行初始化,然后再使用
76. 如何定义类的继承关系?()
A. 在类的定义部分使用parent关键字
B. 在类的定义部分使用inherited关键字
C. 在类的定义部分使用extends关键字
D. 在类的定义部分使用emplement关键字
77. 在Java中,一个类最多允许有几个直接父类?()
A. 两个
B. 一个
C. 四个
D. 无限制
78. 有一个类,它是所有java类的直接或间接父类,这个类是()
A. Class 类
B. System类
C. ng类
D. Object类
79. Java系统如何区分字符串连接的“+”号和算术运算的加法“+”号?()
A. 表达式中如果以字符串开头,那么其后的“+”号都是字符串连接符
B. 在表达式中只要存在字符串,“+”号就是字符串连接符
C. 字符串之间、字符串和数字之间的“+”号是字符串连接符,数字之间的“+”号是算术加法
D. 在“+”号两边只要存在数字,就一定是算术加法符号
80. 设置线程的优先级时需要注意哪些问题?()
A. 一个程序中至少要有一个线程设置成低优先级
B. 一个程序中最多只能有一个线程设置成高优先级
C. 如果程序员将其线程设为最高优先级,其就有责任保证不干扰其它应用程序的正常执行
D. 所有的线程都要设置成最高优先级,以加快执行速度
81. Jbuilder产生的可执行程序有什么优点?()
A. 可以利用Visual Studio等其它集成平台设计Java程序
B. 可以直接双击程序运行,运行方便
C. 可执行程序可以跨平台运行
D. 对于没有装java虚拟机的操作系统,也可以运行
82. 顶级Swing容器的作用是什么?()
A. 作为其他一切组件显示的基础
B. 为其他Swing组件在屏幕上的绘制和处理事件提供支持
C. 必须是入口类,作为图形界面程序的载体
D. 必须是入口类,作为程序的数据存储的载体
83. 在Java的图形界面程序中,为便于排列,组件一般放在哪里?()
A. 面板上
B. 对话框上
C. 直接放在框架上
D. 标签上
84. 如何在框架中加入各种组件?()
A. 用getContent函数获取内容窗格,在内容窗格中用add函数加入各种组件
B. 将组件作为框架对象的成员变量即可
C. 用框架的add函数直接加入组件
D. 将组件作为入口类的成员变量即可
85. 如可在框架中加入菜单栏?()
A. 通过框架的add函数将菜单栏直接放在框架上
B. 通过内容窗格的add函数将菜单栏放到内容窗格上
C. 将菜单栏作为框架的一个成员变量
D. 通过框架的setMenuBar函数加入菜单栏
86. 如何调整框架的大小?()
A. 在初始化文件(int 文件)中设置
B. 框架的大小是由内部的组件大小决定的,不能直接调整框架大小
C. 利用setSize函数调整框架的大小
D. 在注册表中设置
87. 关于卡片式布局,以下描述中错误的是()
A. 可以一次只显示一张卡片,也可以水平垂直排列所有卡片
B. 卡片式布局中一般都有好几个相同的面板,每次只能显示其中的一个面板
C. 作用类似于摆在一起的卡片,每次只能显示最顶上的一张
D. 它所管理的不是组件,面是面板
88.如何创建一个卡片式布局的面板?()
A. 设置框架的布局管理器为卡片式布局
B. 创建一个CardLayout的对象,利用setLayout函数将布局管理器设置为该对象
C. 创建一个CardPand类型的面板
D. 创建一个CardLayout对象,将面板作为参数传递给该对象
89. 在网络程序中,是否需要使用线程技术?()
A. 不需要,由于网络连接采用中断方式,因此不需要采用线程
B. 需要,由于网络连接采用事件方式,需使用独立的线程处理事件
C. 需要,因为网络线程中存在很多等待过程,因此需要独立的线程来等待网络消息
D. 不需要,由于网络连接采用事件方式,因此不需要采用线程90.在java中,对象在何种状态下被回收?()
A. 当对象关联的引用变量消息时
B. 当没有引用变量在指向该对象时
C. 当没有任何程序再访问一个对象或对象成员变量时
D. 当对象的所有成员函数都执行一遍以后
91. 简单变量和引用变量的初始化有什么区别?()
A. 二者都需要初始化,因此他们的初始化也没有区别
B. 简单变量的初始化只需要给它赋一个值,而引用变量的初始化需要指向一个存在的对象
C. 简单变量的初始化需要为它分配一个数值单元,而引用变量的初始化只需要给它赋一个值即可
D. 二者的初始化都需要指向一个存在的单元,但前都需要指向一个数值单元,后者需要指向一个对象
92. 以下异常中,不属于Runtime Exception的是()
A. IndexOutOfBoundsException数组下标越界异常
B. NullPointerException使用未初始化的引用变量
C. IllegalAccessException没有足够的权限访问其他类的成员
D. ArithmeticException算术异常
93. 如何调用java小程序?()
A. 打开HTML文件即可调用,或者利用Appletviewer命令调用
B. 在命令行为方式下键入java命令来调用
C. 在JBuilder中键入java命令来调用
D. 双击小程序文件即可执行
94. 在创建JBuilder工程的步骤中,下面哪一步是错误的?()
A. 设置工程类型为“jpx”
B. 设置JBuilder工程所在的目录位置
C. 选择最终产生的可执行文件的操作系统平台
D. 输入工程名
95. while循环的含义是()。
A. 当条件表达式为真时,反复执行花括号里的语句
B. 反复执行花括号里的语句,执行次数等于条件表达式的值
C. 反复执行花括号里的语句,直到条件表达式为真
D. 反复执行花括号里的语句,执行次数等于条件表达式的值,之后再判断条件表达式的值是否正确
96. while循环和do while循环有什么区别?()
A. while循环是当条件表达式为真时,反复执行循环语句,而do while 循环是反复执行循环语句,直至条件表达式为真
B. while循环是先判断再执行,而do while循环是先执行后判断
C. while循环比do while循环要少执行一次
D. while循环至少执行一次,而do while循环可能一次也不执行
97. Java中是否区分函数和子程序?()
A. 区分,带有返回值的是函数,用“function”关键字定义
B. 不区分,没有返回值的函数相当于其它语言中的子程序
C. 区分,不带有返回值的是子程序,用“procedure”关键字定义
D. 不区分,java中的所有函数都必须要有一个返回值
98. 什么是函数的返回值?()
A. 返回值在函数中通过一个与函数名称相同的变量给出
B. 返回值是函数传输给外界的数据
C. 返回值在函数中通过一个特殊的“result”变量给出
D. 返回值在主程序中通过特殊的“funcName.result”变量得到
99. 调用函数时,如何保证传递给函数的值与函数的参数相对应?()
A. 传递给函数的参数类型、数量、先后顺序要与函数定义中的一致
B. 传递给函数的变量值要与函数定义时的变量值相一致
C.传递给函数的变量名要与函数定义时的变量名相一致
D. 只需传递给函数的参数数量一致即可
100. 在接口定义中,不包括的内容是()
A. 函数定义
B. 实现接口的类列表
C. “interface”关键字
D. 接口定义和接口主体
[文档可能无法思考全面,请浏览后下载,另外祝您生活愉快,工作顺利,万事如意!]。