一起答

2013年9月全国计算机等级《二级JAVA》命题预测试卷四

如果您发现本试卷没有包含本套题的全部小题,请尝试在页面顶部本站内搜索框搜索相关题目,一般都能找到。
  1. 本题的功能是监听鼠标的拖曳操作。窗口中有一个列表框,列表框中列出了当前目录的所有文件,鼠标选中一个或多个文件后拖曳出窗口,此操作的功能是将拖曳的文件复制一份在拖曳的目的目录下。

    import java.awt.*;

    import java.awt.datatransfer.*;

    import java.awt.dnd.*;

    import java.awt.event.*;

    import java.io.*;

    import java.util.*;

    import javax.swing.*;

    public class java3

    {

    public static void main(String[]args)

    {

    JFrame. frame=new DragSourceFrame;

    frame.setDefauhCloseOperation(JFrame.EXIT_

    0N_CLoSE);

    frame.show;

    }

    }

    class DragSoureeFrame. extends JFrame

    {

    public DragSourceFrame

    {

    setTitle("java3");

    setSize(WlDTH,HElGHT);

    Container contentPane=getContentPane;

    File f=new File(".").getabsoluteFile

    File[]files=f.listFiles;

    model=new DefaultListModel;

    for(int i=0;i)

    try

    {

    model.addElement(files[i].getCanonicalFile);

    }

    catch(IOException exception)

    {

    JOptionPane.showMessageDialog(this,exeep-

    tion);

    }

    fileList=new JList(model);

    contentPane.add(new JScrollPane(fileList),

    BorderLayout.CENTER);

    contentPane.add(new JLabel("从列表中拖曳出文

    件"), 

    BorderLayout.NoRTH);

    DragSource dragSource=DragSource.getDefauh-

    DragSource;

    dragSource.createDefaultDragGestureRecognizer

    (fileList,

    DnDConstants. ACTION_COPY_0R_

    MOVE,new

    DragGestureListener

    {

    public void dragGestureRecognized(

    DragGestureEvent event)

    {

    draggedValues=fileList.getSelectedValues;

    Transferable transferable

    =new FiteListTransferable(draggedValues);

    evenr.startDrag(null,transferable,

    new FileListDragSourceListener);

    }

    });

    }

    private class FileListDragSourceListener imple-

    ments DragSourceAdapter

    {

    public void dragDropEnd(DragSourceDropEvent e-

    vent)

    {

    if(event.getDropSuccess)

    {

    int action=event.getDropAction;

    if(action= =DnDConstants.ACTl0N MOVE)

    {

    for(int i=0;i

    model.removeElement(draggedValues[i]);

    }

    }

    }

    }

    private JList fileList;

    private DefauhListModel model;

    private Object[]draggedValues;

    private static final int WIDTH=300;

    private static final int HEIGHT=200;

    }

    class FileListTransferable implements Transferable

    {

    public FileListTransferable(Object[]files)

    {

    fileList=new ArrayList(Arrays.asList(files));

    }

    public DataFlavor[]getTransferDataFlavors

    {

    return flavors;

    public boolean isDataFlavorSupported(DataFlavor

    flavor)

    {

    return Arrays. asList(flavors), contains(flavor) ;

    }

    public Object getTransferData(DataFlavor flavor)

    throws UnsupportedFlavorException

    if(flavor, equals(DataFlavor, javaFileListFlavor) )

    return fileList;

    else if(flavor, equals(DataFlavor, stringFlavor))

    return fileList, toString ;

    else 

    throw new UnsupportedFlavorException(flavor) ;

    }

    private static DataFlavor[] flavors =

    {

    DataFlavor. j avaFileListFlavor,

    DataFlavor. stringFlavor

    };

    private java. util. List fileList;

  2. 本题的功能是获得字符串“China”的长度和最后一个字符,并将这些信息打印出来。

    public class javal(

    public static void main(String[]args){

         

    str="China";

    int n=0:

         

    char C;

         

    System.out.println("字符串中共有"+n+"个字

    符,最后一个字符是:"+c);

    }

    }

  3. 本题中,窗口的背景色为系统桌面的颜色,在窗口中分别画空心和实心的黑色矩形、深灰色圆角矩形和浅灰色椭 圆形,并且画白色粗体的“欢迎学习Java!”字符串。

    import java.awt.*;

    import javax.swin9.*;

    public class java2

    {

    public static void main(String[]args)

    {

    FillFrame. frame=new FillFrame;

    frame.setDefaultCloseOperation(JFrame.EXIT_

    ON_CLOSE);

    frame.show;

    }

    }

    class FillFrame. extends JFrame

    {

    public FillFrame

    {

    setTitle("java2"):

    setSize(WIDTH,HEIGHT);

    FillPanel panel=new FillPanel;

    panel.setBackground(SystemColor.desktop);

    Container contentPane=getContentPane;

    contentPane.add(panel);

    }

    public static final int WIDTH=400;

    public static final int HEIGHT=250;

    }

    class FitlPanel extends JPanel

    {

    public void paintComponent(Graphics g)

    {

           

    g.setColor(new Color(10,10,10));

    g.drawRect(10,10,100,30);

    g.setColor(new Color(100,100,lOO));

    g.drawRoundRect(150,10,100,30,15,15);

    g.setColor(new Color(150,150,150));

    g.drawOval(280,10,80,30);

    g.setColor(new Color(10,10,10));

    g.fillRect(10,ll0,100,30);

    g.setColor(new Color(100,100,100));

    g.fillRoundRect(150,110,100,30,15,15);

    g.setColor(new Color(150,150,150));

    g.fillOval(280,110,80,30);

    g.setColor(Color.white);

    Font f=new Font("宋体”,        ,20);

    g.setFont(f);

    g.drawstring("欢迎学习Java!",l50,200);

    }

    }

  4. 数据流程图(DFD图)是(  )。

    • A.软件概要设计的工具
    • B.软件详细设计的工具
    • C.结构化方法的需求分析工具 
    • D.面向对象方法的需求分析工具
  5. 下列不属于Swing中构件的是(  )。

    • A.JPanel 
    • B.JTable
    • C.Menu
    • D.JFrame
  6. 下列叙述中,错误的是(  )。

    • A.内部类的名称与定义它的类的名称可以相同
    • B.内部类可用abstract修饰
    • C.内部类可作为其他类的成员
    • D.内部类可访问它所在类的成员
  7. 假设用一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有的元素个数为(  )。

    • A.50 
    • B.19
    • C.1 
    • D.20
  8. 下列程序的输出结果是(  )。

    Public class Test{

    Public static void main(String[]args){

    int[]array=(2,4,6,8,10);

    int size=6;

    int result=-l:

    try{

    for(int i=0;i

    if(array[i]= =20)result=i:

    }

    catch(ArithmeticException e){

    System.out.println("Catch---1");

    }

    catch(ArraylndexOutOfBoundsException e){

    System.out.println("Catch---2"):

    }

    catch(Exception e){

    System.out.println("Catch---3"):

    }

    }

    • A.Catch---1 
    • B.Catch---2
    • C.Catch---3
    • D.以上都不对
  9. 下列关于正则表达式的说法,不正确的是(  )。

    • A.在J2SE l.4中的正则表达式包中有一个Pattern类   
    • B.在J2SE l.4中的正则表达式包中有一个Macher类
    • C.在J2SE l.4中的正则表达式包名为java.util.regex
    • D.以上说法都不对
  10. 下列程序片段中,能通过编译的是(  )。

    • A.public abstract class Animal{ public void speak;}
    • B.public abstract class Animal{ public void speak{);}
    • C.public class Animal{ pubilc abstract void speak;}
    • D.public abstract class Animal{ pubile abstract void speak{};}
  11. 如果入栈序列为CEDB,以下哪一个是从栈中删除元素的序列?(  )

    • A.BED 
    • B.BDE
    • C.BEDC
    • D.BDEC
  12. 下列选项中,不能输出100个整数的是(  )。

    • A.for(int i=0;i<100;i++) System.out.println(i);
    • B.int i=0; do{ System.out.println(i); i++: }while(i<100);
    • C.int i=0: while(i<100){System.out.println(i); i++: }
    • D.int i=0: while(i<100){ i++: if(i<100)continue: System.out.println(i); }
  13. 下列操作中,不属于Applet安全限制的是(  )。

    • A.加载本地库
    • B.读写本地文件系统 
    • C.运行本地可执行程序
    • D.与同一个页面中的Applet通信
  14. JScrollPane面板的滚动条是通过哪个对象来实现?(  )

    • A.JViewport 
    • B.JSplitPane
    • C.JTabbedPane
    • D.JPanel
  15. 下列代码中的内部类名是(  )。

    import java.awt.event.*;

    lapoct javax.swin9.*;

    class TalkingClock(

    public void start(int interval,final boolean beep){

    • ActionListener listener=new
    • ActionListener{    public void actionPerformed(ActionEvent e-    vent){    …    }    }    Timer t=new Timer(interval,listener); &n
    • A.Timer 
    • B.ActionListener
    • C.1istener 
    • D.匿名
  16. 下列说法中,正确的一项是(  )。

    • A.Java语言是以类为程序的基本单位的
    • B.Java语言是不分大小写的
    • C.多行注释语句必须以//开始
    • D.在Java语言中,类的源文件名和该类名可以不相同
  17. 算法的空间复杂度是指(  )。

    • A.算法程序的长度
    • B.算法程序中的指令条数
    • C.算法程序所占的存储空间
    • D.算法执行过程中所需要的存储空间
  18. 下列关于Test类的定义中,正确的是(  )。

    • A.class Test implements Runnable{    public void run{}
    • Dublic void someMethod[]{}    }
    • B.class Test implements Runnable(    puIblic void run;    }
    • C.class Test implements Runnable(
    • Dublic void someMethod[];     }
    • D.class Test implements Runnable(    public void someMethod{}    }
  19. 开发软件时对提高开发人员工作效率至关重要的是(  )。

    • A.操作系统的资源管理功能
    • B.先进的软件开发工具和环境
    • C.程序员的数量
    • D.计算机的并行处理能力
  20. 下列不属于表达式语句的是(  )。

    • A.++i; 
    • B.--j;
    • C.b#a;
    • D.b*=a;
  21. 当启动Applet程序时,首先调用的方法是(  )。

    • A.stop 
    • B.init
    • C.start
    • D.destroy
  22. 栈中允许进行插入和删除的一端称为(  )。

    • A.栈顶   
    • B.栈底
    • C.栈端   
    • D.栈尾
  23. 对于给出的一组权w={10,12,16,21,30},通过霍夫曼算法求出的扩充二叉树的带权外部路径长度为(  )。

    • A.89
    • B.189
    • C.200
    • D.300
  24. 设有一个已按各元素的值排好序的顺序表(长度大于2),现分别用顺序查找法和二分查找法查找与给定值k相等的元素,比较的次数分别是s和b,在查找不成功情况下s和b的关系是(    )。

    • A.s=b 
    • B.s>b
    • C.sD.s>=b
  25. 在Java语言中,封闭是借助于(  )实现的。

    • A.对象 
    • B.类
    • C.数组 
    • D.成员
  26. 代码System.out.println(066)的输出结果是(  )。

    • A.12 
    • B.36
    • C.54 
    • D.66
  27. Java中的字符变量在内存中占位(bit)为(  )。

    • A.4 
    • B.8
    • C.16
    • D.24
  28. 下列数据结构中,属于非线性结构的是(  )。

    • A.循环队列 
    • B.带链队列
    • C.二叉树 
    • D.带链栈
  29. Java语言中如果要使用某个包中的类时,需要使用 (  )导人。 

    • A.inport 
    • B.outport
    • C.import
    • D.input
  30. 下列选项成员变量声明正确的是(  )。

    • A.public protected final int i;
    • B.abstract class Fl{…}
    • C.private double height;
    • D.double weight
  31. 下列关于Java对import语句规定自叙述中,错误的是(  )。

    • A.在Java程序中import语句可以有多个
    • B.在Java程序中import语句可以没有
    • C.在Java程序中import语句必须有一个
    • D.在Java程序中import语句必须引入在所有类定义之前
  32. 一个栈的初始状态为空,首先将元素5,4,3,2,1依次入栈,然后退栈一次,再将元素A,B,C。D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为(  )。

    • A.54321ABCD 
    • B.5ABCD4321
    • C.DCBAl2345
    • D.1DCBA2345
  33. 下列关于Java语言特点的叙述中,错误的是(  )。

    • A.Java是面向过程的编程语言
    • B.Java支持分布式计算
    • C.Java是跨平台的编程语言 
    • D.Java支持多线程
  34. 下列标识符(名字)命名原则中,正确的是(  )。

    • A.类名的首字母小写
    • B.变量和方法名的首字母大写
    • C.接口名的首字母小写
    • D.常量完全大写
  35. 在Java中,若要使用一个包中的类时,首先要求对该包进行导入,其关键字是(  )。

    • A.import 
    • B.package
    • C.include
    • D.packet
  36. 下列叙述中,错误的是(  )。

    • A.Java中,方法的重载是指多个方法可以共享同一个名字
    • B.Java中,用abstract装饰的类称为抽象类,它不能实例化
    • C.Java中,接口是不包含成员变量和方法实现的抽象类
    • D.Java中,构造方法可以有返回值
  37. 下列描述中,错误的是(  )。

    • A.Java要求编程者管理内存
    • B.Java的安全性体现在多个层次上
    • C.Applet要求在支持Java的浏览器上运行
    • D.Java有多线程机制
  38. 下面程序段的输出结果是(  )。

    public class Test{

    public static void main(String args[]){

    int X,y;

    x=(int)Math.sqrt(5)/2+(int)Math.random*5/2;

    y=(int)Math.sqrt(3)/2+(int)Math.random*3/2;

    if(x>v)

    System.OUt.println("x>y");

    elseif(x= =y)

    System.out.println("x=Y");

    else

    System.out.println("x

    }

    }

    • A.x>y 
    • B.x=Y
    • C.x
    • D.编译错误
  39. 在E-R图中,表示实体联系的框是(  )。

    • A.矩形 
    • B.椭圆形
    • C.菱形 
    • D.正方形
  40. 需求分析阶段的任务是(  )。

    • A.软件开发方法 
    • B.软件开发工具
    • C.软件开发费用 
    • D.软件系统功能
  41. 为了支持压栈线程与弹栈线程之间的交互与同步,应

    在下画线处填入的选项是(  )。

    public class StackTest{

    private int idx=0;

    private int[]data=new int[8]

    public void push(int i){

    synchronized(this){

          

    data(idx)=i:

    idx++:

    }

    }

    }……

    • A.this.notify 
    • B.interrupt
    • C.this.wait
    • D.sleep
  42. 下面for循环语句的执行结果是(  )。

    for(int j=10;j>3;j--) 

    if(j%3 !=O)

    j--;

    --j; 

    --j;

    System.out.println(j);

    }

    • A.63 
    • B.74
    • C.62 
    • D.73
  43. Java对I/O访问所提供的同步处理机制是(  )。

    • A.字节流 
    • B.过滤流
    • C.字符流 
    • D.压缩文件流