2013年9月全国计算机等级《二级JAVA》考前冲刺试卷二
-
本题中,主窗口有一个按钮、一个文本域和一个复选按钮,初始时窗口的大小是不能调整的,选中复选按钮后,窗口大小就可以进行调整,如果撤销复选按钮的选择,则窗口的大小又不能调整,单击按钮可以关闭程序。
import java.awt.*;
import java.awt.event.*;
class MyFrame. extends Frame
{Checkbox box;
TextArea text;
Button button;
MyFrame(String s)
{super(s);
box=new Checkbox("设置窗口是否可调整大
小");
text=new TextArea(12,12);
button=new Button("关闭窗口");
button.addActionListener(this);
box.addltemListener(this);
setBounds(100,100,200,300);
setVisible(true);
add(text,BorderLayout.CENTER);
add(box.BorderLayout.SOUTH);
add(button.BorderLayout.NORTH);
;
validate;
}
public void itemStateChanged(ItemEVent e)
{if(box.getState= =true)
{setResizable(true);
}
else
{ setResizable(false);
}
}
public void actionPerformed(ActionEvent e)
{dispose;
}
}
class java2
{public static void main(String args[])
{ new MyFrame("java2");
}
}
-
本题的功能是监听鼠标左右键的单击,以及面板中滚动条的添加。在窗口的画板中单击鼠标左键,在单击的位置绘制一个圆,当绘制的圆大于画板的大小时,画板就添加滚动条,在画板中单击鼠标右键,则清除画板中的所有图形。
import javax.swing.*;
import javax.swing.event.MouselnputAdapter;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class java3 extends JPanel{
private Dimension size;
private Vector objects;
private final Color colors[]={
Color.red,Color.blue,Color.green,Color.or-
ange,
Color.cyan,Color.magenta,Color.darkGray,
Color.yellow);
private final int color_n=colors.length;
JPanel drawingArea;
public java3{
setopaque(true);
size=new Dimension(0,0);
bjects=new Vector;
JLabel instructionsLeft=new JLabel("单击鼠标
左键画圆.");
JLabel instructionsRight=new JLabel("单击鼠
标右键清空画板.");
JPanel instructionPanel=new JPanel(new Grid-
Layout(0,1));
instructionPanel.add(instructionsLeft);
instructionPanel.add(instructionsRight);
drawingArea=new JPanel{
protected void paintComponent(Graphics g){
super.paintComponent(g);
Rectangle rect;
for(int i=0;i
rect=(Rectangle)objects.elementAt(i):
g.setColor(colors[(i%color_n)]);
g.fillOval(rect.X,rect.Y,rect.width,rect.
height);
}
}
};
drawingArea.setBackground(Color.white);
drawingArea.addMouseListener(new MouseLis-
tener);
JScrollPane scroller=new JScrollPane(drawing-
Area);
scroller.setPreferredSize(new Dimension(200,
200));
setLayout(new BorderLayout);
add(instructionPanel,BorderLayout.NORTH);
add(scroller,BorderLayout.CENTER):
}
class MyMouseListener extends mouseInputAdapt-
er{
final int W=100;
final int H=100;
public void mouseReleased(MouseEvent e){
boolean changed=false;
if(SwingUtilities.isRightMouseButton(e)){
objects.removeAllElements;
size.width=0;
size.height=0;
changed=true;
}else{
int X=e.getX-W/z;
int Y=e.getY-H/2
if(x<0)x=0;
if(y
Rectangle rect=new Rectangle(X,Y,W,H);
objeets.addElement(rect);
drawingArea.scrollRectToVisible(rect);
int this_width=(x+W+2);
if(this width>size.width)
{size.width=this_width;changed=true;}
int this=height=(y+H+2);
if(this_height>size.height)
{size.height=this_height;changed=true;}
}
if(changed){
drawingArea.setPreferredSize(size);
drawingArea.revalidateI;
}
drawingArea.paint;
}
}
public static void main(String args[]){
JFrame. frame=new JFrame("java3"):
frame.addWindowListener(new WindowAdapter
{
public void windowClosing(WindowEvent e)
{System.exit(0);}
});
frame.setContentPane(new java3);
frame.pack;
frame.setVisible(true);
}
}
-
本题求一个实数37.13的整数部分和小数部分,并打印输出。
public class javal{
public static void main(String[]args)(
d=37.13;
int i;
;
double x;
;
System.out.println(d+"整数部分:"+i+",小数
部分:"+x);
}
}
-
有两个关系R、S如下:
由关系R通过运算得到关系S,则所使用的运算为( )。
- A.选择
- B.投影
- C.插入
- D.连接
-
用于在子类中调用被重写父类方法的关键字是( )。
- A.this
- B.super
- C.This
- D.Super
-
下列特征中不是面向对象方法的主要特征的是( )。
- A.多态性
- B.继承
- C.封装性
- D.模块化
-
在长度为z的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。
- A.O(n)
- B.O(n2)
- C.O(log2n)
- D.O(nlog2n)
-
在下列代码的下i画线处应填人的内容是( )。
public class FirstSample{
public static void main( args[]){
System.out.println("你好!");
}
}
- A.staff
- B.double
- C.int
- D.String
-
某二叉树有5个度为2的结点以及3个度为1的结点,则该二叉树中共有结点数为( )。
- A.11
- B.12
- C.13
- D.14
-
最常用的一种基本数据模型是关系数据模型,它的表示应采用( )。
- A.树
- B.网络
- C.图
- D.二维表
-
下列程序的功能是将一个整数数组写入二进制文件,在程序的下画线处应填入的选项是( )。
importjava.io.*;
public class XieShuzu{
Dublic static void main(String[]a){
Int[]myArray=(10,20,30,40);
try{
DataOutputStream dos=
new DataOutputStream(new
FileOutput Stream("ints.dat"));
for(int i=0:i
dos. (myArray[i]);
dos.close;
System.out.println("已经将整数数组写入二进制文件:ints.dat");
}catch(IOException ioe)
{System.out.println("IO Excepr_on");}
}
}
- A.writeArray
- B.writeByte
- C.writeInt
- D.writeDouble
-
下列叙述中正确的是( )。
- A.对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n
- B.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)
- C.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)
- D.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)
-
请阅读下面程序
public class ThreadTest{
public static void main(String args[])throws Ex-
ception{
int i=0;
Hello t=new Hello;
;
while(true){
System.Out.println("Good Morning"+i++):
if(i= =2t.isAlive){
System.out.println("Main waiting for Hel-
lo!");
join;//等待t运行结束
}
if(i= =5)break;}
}
}
class Hello extends Thread{
int l;
public void run{
while(true)(
System.Out.println("Hell0"+i++);
if(i= =5)break;)))
- A.t.sleep
- B.t.yield
- C.t.interrupt
- D.t.start
-
在方法内部使用,代表对当前对象自身引用的关键字是( )。
- A.super
- B.This
- C.Super
- D.this
-
下列代码的执行结果是( )。
int numbers[]=new int[6];
for(int i=1;i
numbers[[i]=i-1 ;
Systern.OUt.print(numbers[I]+"");
- A.0 1 2 3 4 5
- B.1 2 3 4 5 6
- C.0 1 2 3 4
- D.1 2 3 4 5
-
下列代码中,将引起编译错误的行是( )。
1)public class Exercise{
2)public static void main(String args[]){
3)floatf=0.0;
4)f+=1.0:
5))
6))
- A.第2行
- B.第3行
- C.第4行
- D.第6行
-
Frame默认的布局管理器是( )。
- A.FlowLayout
- B.BorderLayout
- C.GridLayout
- D.UpLayout
-
系统出现死锁的原因是( )。
- A.计算机系统发生了重大故障
- B.有多个封锁的进程同时存在
- C.若干进程因竞争资源而无休止地等待其他进程释放已占有的资源
- D.资源数大大少于进程数,或进程同时申请的资源数大大超过资源总数
-
执行下面程序段的输出结果为( )。
public class Q
{
public static void main(String argv[])
{
int anar[]一new int[5];
System.out.println(anar[0]);
}
}
- A.0
- B.1
- C.2
- D.5
-
数据库技术的根本目标是要解决数据的( )。
- A.存储问题
- B.共享问题
- C.安全问题
- D.保护问题
-
下列属于合法的Java标识符的是( )。
- A._cat
- B.5books
- C.+static
- D.-3.14159
-
关于Applet执行的操作,下面说法正确的是( )。
- A.在运行时调用其他程序
- B.可以进行文件读/写操作
- C.不能装载动态连接库和调用任何本地方法
- D.试图打开一个socket进行网络通信,但是所连接的主机并不是提供Applet的主机
-
下列不属于接口WindowListener的方法是( )。
- A.windowClosing
- B.windowClosed
- C.windowMinimized
- D.windowOpened
-
执行下列程序时,会产生什么异常( )。
public class Test{
public static void main(String args[]){
int d=101;
int b=220:
long a=321;
System.OUt.println((a-b)/(a-b-d));
}
}
- A.ArraylndexOutOfBoundsException
- B.NumberFormatException
- C.ArithmeticException
- D.EOFExeeption
-
耦合性和内聚性是对模块独立性度量的两个标准,下列叙述中正确的是( )。
- A.提高耦合性降低内聚性有利于提高模块的独立性
- B.降低耦合性提高内聚性有利于提高模块的独立性
- C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度
- D.内聚性是指模块闻互相连接的紧密程度
-
如果应用程序要在Applet上显示输出,则必须重写的方法是( )。
- A.Graphics.drawString
- B.repaint
- C.paint
- D.update
-
在一个线程中调用下列方法,不会改变该线程运行状态的是( )。
- A.yield方法
- B.另一个线程的join方法
- C.sleep方法
- D.一个对象的notify方法
-
下列程序的运行结果是( )。
Public class sun
{
Public static void main(String args[])
{
int x=4,y=0;
if(Math.pow(X,2)= =16)
y—x ;
if(Math.pow(X,2)<15)
y—l/x;
if(Math.pow(X,2)>15)
y=(int)Math.pow(X,2)+1;
system.out.println(y);
}
}
- A.4
- B.17
- C.18
- D.0.25
-
软件(程序)调试的任务是( )。
- A.诊断和改正程序中的错误
- B.尽可能多地发现程序中的错误
- C.发现并改正程序中的所有错误
- D.确定程序中错误的性质
-
关于集合类描述正确的是( )。
Ⅰ.集合类中容纳的都是指向Object类对象的指针
Ⅱ.集合类容纳的对象都是Object的类例
Ⅲ.只能容纳对象
IV.只能容纳基本数据类型
- A.Ⅰ、Ⅱ、Ⅲ
- B.Ⅰ、Ⅱ
- C.Ⅰ、Ⅲ
- D.Ⅰ、Ⅱ、Ⅲ、IV
-
下列叙述中,不属于测试的特征的是( )。
- A.测试的挑剔性
- B.完全测试的不可能性
- C.测试的可靠性
- D.测试的经济性
-
在switch(expression)语句中,expression的数据类型不能是( )。
- A.double
- B.char
- C.byte
- D.short
-
Java对文件类提供了许多操作方法,能获得文件对象父路径名的方法是( )。
- A.getAbsolutePath
- B.getParentFile
- C.getAbsoluteFile
- D.getName
-
16根地址总线的寻址范围是( )。
- A.531KB
- B.64KB
- C.640KB
- D.1MB
-
设a=8,则表达式a>>>2的值是( )。
- A.1
- B.2
- C.3
- D.4
-
Java中的抽象类Reader和Writer所处理的流是( )。
- A.图像流
- B.对象流
- C.字节流
- D.字符流
-
有三介关系R、S和T如下:
则由关系R和S得到关系T的操作是( )。
- A.自然连接
- B.交
- C.投影
- D.并
-
以下不是APPLET标记的选项是( )。
- A.PARAM
- B.BODY
- C.CODEBASE
- D.ALT
-
下列代码的下画线处应填入的方法名是( )。
import java.awt.*;
import java.applet.*;
public class Hello extends Applet{
public void (Graphics g){
9.drawstring("How are you!",l0,10);
}
}
- A.repaint
- B.println
- C.paint
- D.show
-
设计程序时,应采纳的原则之一是( )。
- A.程序的结构应有助于读者的理解
- B.不限制goto语句的使用
- C.减少或取消注释行
- D.程序越短越好
-
使用白盒测试法时,确定测试数据应该根据( )和指定的覆盖标准。
- A.程序的内部逻辑
- B.程序的复杂结构
- C.使用说明书
- D.程序的功能
-
在多线程程序设计中,如果采用继承Thread类的方式创建线程,则需要重写Thread类的( )方法。
- A.start
- B.local
- C.interrupt
- D.run
-
阅读下面代码
if(x= =0){System.OUt.println("冠军");}
elseif(x>-3){System.OUt.println("亚军");)
else{System.Out.println("季军");)
若要求打印字符串”季军”,则变量X的取值范围是( )。
- A.x=0&x<= -3
- B.x>0
- C.x>-3
- D.x<=-3