试题

计算机二级考试Java练习题及答案

时间:2024-07-18 14:21:17 试题 我要投稿

2017年计算机二级考试Java练习题及答案

  2017年上半年计算机二级考试时间将会在3月25-28日开始进行,为了帮助大家能顺利通过计算机二级考试,下面百分网小编为大家带来2017年计算机二级考试Java练习题及答案,供大家参考学习,预祝考生备考成功!:

2017年计算机二级考试Java练习题及答案

  练习题一

  1[单选题] 在软件开发中,需求分析阶段可以使用的工具是(  )。

  A.N-S图 B.DFD图C.PAD图 D.程序流程图

  参考答案:B

  参考解析:在软件开发中,需求分析阶段常使用的工具有数据流图(DFD)、数据字典(DD)、判断树和判断表。

  2[单选题] Java中用于提供Java语言、Java虚拟机的核心的类和接口的包是(  )。

  A.java.io包B.java.applet包C.java.lang包D.java.net包

  参考答案:C

  参考解析:本题考查考生对Java语言中的类和接口的理解。java.lang包提供了构成Java语言、Java虚拟机核心的类和接口。例如,类object、类String和类Thread等。对任何一个Java程序来说,这些类几乎都是必不可少的。java.lang还包含了许多由Java虚拟机发出的异常,这些异常也是”类”的-种。另外,java.lang包还包含-些用于访问系统资源的类,如ClassLoader等。java.lang包具有极其重要的作用,在程序开头可以不必明文编写装载它的代码。

  3[单选题] 数据库技术的根本目标是要解决数据的(  )。

  A.存储问题B.共享问题C.安全问题D.保护问题

  参考答案:B

  参考解析:在数据库系统中,需要对数据进行集合、统-的管理,以达到被多个应用程序共享的目标。

  4[单选题]下列关于栈叙述正确的是(  )。

  A.栈顶元素能最先被删除

  B.栈顶元素最后才能被删除

  C.栈底元素永远不能被删除

  D.以上三种说法都不对

  参考答案:A

  参考解析:栈是限定在一端进行插入、删除的先入后出的线性表数据结构,栈顶元素最后插入到栈中,但是最先被删除;而栈底元素最先插入,最后被删除。

  5[单选题] 有下列二叉树,对此二叉树前序遍历的结果为(  )。

  A.XZCYABB.XYZABCC.XYABCZD.XYAZBC

  参考答案:D

  参考解析:对二叉树的前序遍历是指:先访问根结点,然后访问左子树,最后访问右子树,并且,在访问左、右子树时,先访问根结点,再依次访问其左、右子树。

  6[单选题] 下面程序段的输出结果是(  )。

  A.9B.18C.20D.22

  参考答案:D

  参考解析:本题考查继承和构造函数的用法。首先要明确对一个类的继承是指在父类的基础上构建了一个子类,子类继承了父类的方法和状态。题目所给程序段创建的是Extension类的实例,在运行时,从main(  )函数进入程序,所有调用add(  )方法的过程将始终和Extension类的add(  )方法动态绑定。初始值:i=0;创建实例newExtension(  );先调用父类的默认构造函数Base(  ),并在父类的默认构造函数中执行add(1),i=0+1×2,所以i=2,再调用子类的默认构造函数Extension(  ),子类的默认构造函数中执行add(2),i=2+2×2,所以i=6;执行add(8);i=6+8×2,因此,最终i=22,正确答案为选项D。

  7[单选题] 将E—R图转换为关系模式时,实体和联系都可以表示为(  )。

  A.属性B.键C.关系D.域

  参考答案:C

  参考解析:将E—R图转换为关系模式时,实体和联系都可以表示为关系。

  8[单选题]下列关于Java源程序结构的论述中,正确的是(  )。

  A.一个文件包含的import语句最多l个

  B.一个文件包含的public类最多1个

  C.一个文件包含的接El定义最多l个

  D.一个文件包含的类定义最多1个

  参考答案:B

  参考解析:一个文件的public类最多可以有一个,但是可以包含多个import,包含的接口定义也可以有多个,包含的class类可以有多个,当该文件命名时,可以以public类名来命名,反之编译之后将有多个.class文件生成。

  9[填空题]耦合和内聚是评价模块独立性的两个主要标准,其中 反映了模块内各成分之间的联系。

  参考解析:BDSM

  10[单选题] 下列组件不能添加进Frame主窗口的是(  )。

  A.PanelB.CheekBoxC.DialogD.Choice

  参考答案:C

  参考解析:本题考查Java组件中容器的基本知识。选项A错误,Panel组件是容器,可以添加到Frame窗口;选项B错误,CheckBox组件是复选框组件,可以添加到Frame窗口;选项C正确,Dialog继承自Window,Windows类型(或子类)的对象不能包含在其他容器中;选项D错误,Choice组件是选择框组件,可以添加到Frame窗口。

  11[单选题]下列叙述中,不属于软件需求规格说明书的`作用的是

  A.便于用户、开发人员进行理解和交流

  B.反映出用户问题的结构,可以作为软件开发工作的基础和依据

  C.作为确认测试和验收的依据

  D.便于开发人员进行需求分析

  参考答案:D

  12[单选题] 当使用SomeThread t=new SomeThread()创建一个线程时,下列叙述中正确的是(  )。

  A.SomeThread类是包含run()方法的任意Java类

  B.SomeThread类一定要实现Runnable接口

  C.SomeThread类是Thread类的子类

  D.SomeThread类是Thread类的子类并且要实现Run-nable接口

  参考答案:C

  参考解析:由SomeThread t=new SomeThread()可知此题是通过继承Thread类来创建线程的。

  13[单选题]数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为

  A.C B.Basic C.DDL D.DML

  参考答案:C

  14[单选题]下列哪个选项是合法的标识符?

  A.123 B._name C.class D.1first

  参考答案:C

  15[单选题]阅读下列代码

  public class Test2005{

  public static void main(String args[]){

  System.out.println(~(0xa5) &0xaa);

  }

  }

  其运行结果是

  A.0xa5 B.10 C.0x50 D.0xaa

  参考答案:B

  16[单选题] 下列关于Java对import语句规定的叙述中,错误的是(  )。

  A.在Java程序中import语句可以有多个

  B.在Java程序中import语句可以没有

  C.在Java程序中import语句必须有一个

  D.在Java程序中import语句必须引入在所有类定义之前

  参考答案:C

  参考解析:Java程序中使用import关键字导入一个包中的类。在一个Java源程序中,可以有0个或多个im—port语句,但是必须在所有类定义之前引入标准类。因此,本题中选项C的说法是错误的。

  17[单选题] 可以使当前同级线程重新获得运行机会的方法是(  )。

  A.Sleep() B.join()C.yield()D.interrupt()

  参考答案:C

  参考解析:本题考查线程的基本控制。Thread类提供的基本线程控制方法包括:sleep()——使比其低的优先级线程运行,可以让一个线程暂停运行一段固定的时间;yield()——使具有与当前线程相同优先级的线程有运行的机会;join()——使当前线‘程暂停执行,等待调用该方法的线程结束后,再恢复执行;interrupt()——中断线程的阻塞状态,并且线程接收到InterruptException异常。根据上述介绍可知,只有yield()方法可以使当前同级线程重新获得运行机会。因此,本题的正确答案是C。

  18[单选题] 当使用SomeThread t=new SomeThread()创建一个线程时,下列叙述中正确的是(  )。

  A.SomeThread类是包含run()方法的任意Java类

  B.SomeThread类一定要实现Runnable接口

  C.SomeThread类是Thread类的子类

  D.SomeThread类是Thread类的子类并且要实现Runnable接口

  参考答案:C

  参考解析:由SomeThread t=new SomeThread()可知此题是通过继承Thread类来创建线程的。

  更多计算机二级相关试题分享:

  1.2017上半年计算机二级Java习题及答案

  2.计算机二级Java练习题及答案2017

  3.2017年3月计算机二级《JAVA》巩固练习题

  4.2017年计算机二级Java备考题及答案

  5.Java计算机二级练习题及答案2017

  6.2017计算机二级《JAVA》考点训练题及答案

  7.2017年计算机二级Java备考练习题

  8.2017年3月计算机二级Java基础习题

  9.2017计算机二级Java基础习题

  10.2017计算机二级Java强化题及答案

  训练题二

  1[简答题]本题中,在下画线上填写代码,指定变量b为字节型,变量f为单精度实型,变量l为64位整型。

  public class javal{

  public static void main(String[-]args){

  b=49;

  f=8.9f;

  l=0xfedl;

  System.out.println("b="+b);

  System.out.println("f="+f):

  System.OUt.println("l="+1);

  }

  }

  参考解析:

  第1处:byte

  第2处:float

  第3处:long

  【解析】本题考查的是数据类型。byte为字节型;float为单精度实型;long为长整型。

  2[单选题] 请阅读下面程序

  程序运行结果中在”length=”后输出的值是(  )。

  A.10B.4C.20D.30

  参考答案:B

  参考解析:本题对StringBuffer(String str)构造方法,用str给出字符串的初始值,并分配16个字符的缓存。因此,字符串sb的初始值是”test”,并且包含l6个字符的缓存。length(  )方法用来获得字符串长度,不包含缓存。故程序运行结果中在”length-”后输出的值应该是字符串sb的长度,即4。

  3[单选题] 为使下列代码正常运行,应该在下画线处填入的选项是(  )。

  ObjectInputStream In=

  new (new FilelnputStream("employee.

  doc"));

  Employee[]newstaff=(Employee[])in.readObject

  ();

  In.close();

  A.Reader B.InputStreamC.ObjectlnputD.ObjectlnputStream

  参考答案:D

  参考解析:ObjectlnputStream类和ObjectOutputStream类分列是InputStream类和OutputStream类的子类。ObjectlnputStream类和ObjectOutputStream类创建的对象被称为对象输入流和对象输出流。对象输入流使用readObject()方法读取一个对象到程序中。

  4[单选题] 为使下列代码正常运行,应该在下画线处填入的选项是(  )。

  abstract class person{

  public Person(String n){

  name=n:

  }

  Public String getDescription();

  public String getName(){

  return name;

  }

  private string name;

  }

  A.static B.privateC.abstractD.final

  参考答案:C

  参考解析:抽象类中的抽象方法可以只声明,定义延迟到其子类。

  5[单选题] Java对文件类提供了许多操作方法,能获得文件对象父路径名的方法是(  )。

  A.getAbsolutePath(  )

  B.getParentFile(  )

  C.getAbsoluteFile(  )

  D.getName(  )

  参考答案:B

  参考解析:本题考查File类的基本知识。File类是通过文件名列表来描述一个文件对象的属性,通过File类提供的方法,可以获得文件的名称、长度、所有路径等信息,还可以改变文件的名称、删除文件等。

  6[单选题] 下列关于域名和IP地址的叙述中,不正确的是(  )。

  A.在Internet中访问一台主机必须使用它的主机名

  B.200.201.202.203是一个C类I P地址

  C.I P地址采用的是分层结构

  D.主机名与I P地址是一一对应的

  参考答案:A

  参考解析:每台直接连接到Internet上的计算机、路由器都必须有唯一的IP地址。IP地址是Internet赖以工作的基础。Internet中的计算机与路由器的IP地址采用分层结构,它是由网络地址与主机地址两部分组成。对于C类地址,其网络地址空间长度为21位,主机地址空间长度为8位,C类I P地址范围从:l92.0.0.0~223.255.255.255。主机名与它的IP地址一一对应,因此在Internet上访问一台主机既可以使用它的主机名,也可以使用它的I P地址。

  7[单选题] 下列关于链式存储结构的叙述中,不正确的是(  )。

  A.结点除自身信息外还包括指针域,因此存储密度小于顺序存储结构

  B.逻辑上相邻的结点物理上不必相邻

  C.可以通过计算确定第i个结点的存储地址

  D.插人、删除运算操作方便,不必移动结点

  参考答案:C

  参考解析:链式存储结构的主要特点有:①结点中除自身信息外,还有表示链接信息的指针域,因此存储密度小、存储空间利用率低;②逻辑上相邻的结点物理上不必相邻;③插入、删除操作灵活方便。线性存储结构可以通过计算确定第i个结点的存储地址,但链式存储结构不能。

  8[填空题]FileInputStream是字节流;BufferedWriter是字符流;ObjectOutputStream是   。

  参考解析:对象流或对象输出流

  9[单选题] 下列叙述中,错误的是(  )。

  A.Applet的默认布局管理器是FlowLayout

  B.JApplet中增加构件是加到JApplet的内容面板上,不是直接加到JApplet中

  C.JApplet的内容面板的默认布局管理器是Border-Layout

  D.JApplet的内容面板的默认布局管理器是FlowLayout

  参考答案:D

  参考解析:FlowLayout布局管理器是Panel类和Applet类默认的布局管理器。向JApplet中增加构件,是把构件添加到Japplet的内容面板中,而不是直接添加到JAp—plet中。JApplet的内容面板的默认布局管理器是Border—Layout,而Applet默认的布局管理器是FlowLayout。

  10[单选题] 软件设计中模块划分应遵循的准则是(  )。

  A.低内聚低耦合

  B.高内聚低耦合

  C.低内聚高耦合

  D.高内聚高耦合

  参考答案:B

  参考解析:耦合性和内聚性是模块独立性的两个定性标准,软件设计应该遵循高内聚低耦合的准则。

  11[单选题] Java对文件类提供了许多操作方法,能获得文件对象父路径名的方法是(  )。

  A.getAbsolutePath(  )

  B.getParentFile(  )

  C.getAbsoluteFile(  )

  D.getName(  )

  参考答案:B

  参考解析:本题考查File类的基本知识。File类是通过文件名列表来描述一个文件对象的属性,通过File类提供的方法,可以获得文件的名称、长度、所有路径等信息,还可以改变文件的名称、删除文件等。

  12[单选题] 对于下面语句的说法,不正确的是(  )。Thread thrObj=new Thread():

  A.系统没有为该线程对象分配资源

  B.只能启动或者终止

  C.创建了一个空的线程对象

  D.可以调用其他方法

  参考答案:D

  参考解析:本题考查线程的创建。通过new命令创建一个线程对象后,该线程对象就处于创建状态,上面的.语句只是创建了一个空的线程对象,选项C说法正确。此时,系统并没有为该线程对象分配资源,选项A说法正确。处于这种状态的线程,只能启动或者终止,选项B说法正确。该线程此时并不能调用其他方法,如果调用其他方法就会失败并引起非法状态处理,选项D说法错误。

  13[单选题] 数据库应用系统中的核心问题是(  )。

  A.数据库设计

  B.数据库系统设计

  C.数据库维护

  D.数据库管理员培训

  参考答案:A

  参考解析:数据库设计的目的是设计一个能满足用户要求,性能良好的数据库。所以数据库设计的核心是数据库应用。

  14[单选题]下列关于Frame类的说法不正确的是

  A.Frame是Window类的直接子类

  B.Frame对象显示的效果是一个窗口

  C.Frame被默认初始化为可见

  D.Frame的默认布局管理器为BorderLayout

  参考答案:D

  15[单选题] 对于循环队列,下列叙述中正确的是(  )。

  A.队头指针是同定不变的

  B.队头指针-定大于队尾指针

  C.队头指针-定小于队尾指针

  D.队头指针可以大于队尾指针,也可以小于队尾指针

  参考答案:D

  参考解析:循环队列是把队列的头和尾在逻辑上连接起来,构成-个环。循环队列中首尾相连,分不清头和尾,此时需要两个指示器分别指向头部和尾部。插入就在尾部指示器的指示位置处插入,删除就在头部指示器的指示位置删除。

  16[单选题] 数据流程图(DFD图)是(  )。

  A.软件概要设计的工具

  B.软件详细设计的工具

  C.结构化方法的需求分析工具

  D.面向对象方法的需求分析工具

  参考答案:D

  参考解析:数据流程图是一种结构化分析描述模型,用来对系统的功能需求进行建模。

  17[简答题]本题的功能是用按钮来控制文字的颜色。窗口中有三个按钮“Yellow”、“Blue”和“Red”,它们分别对应文字标签中文本的颜色为黄色、蓝色和红色,单击任意一个按钮,文字标签中的文本就变成按钮对应的颜色。

  import java.awt.*;

  import java.awt.event.*;

  import javflx.swing.*;

  class ButtonPanel extends JPanel implements ActionL-

  istener{

  public ButtonPanel(){

  yellowButton=new J Button("Yellow");

  blueButton=new JButton("Blue");

  redButton=new JButton("Red");

  j1=new JLabel("I am from China!");

  add(yellowButton);

  add(blueButton);

  add(redButton);

  add(j1);

  yellowButtofl.addActionListener(this);

  blueButton.addActionListener(this);

  redButton.addActionListener(this);

  }

  public void actionPerformed(ActionEvent evt){

  0bject source=evt.getSource();

  Color color=getForeground();

  if(source= =yellowButton)color=Color.

  yellow;

  else if(source= =blueButton)color=Color.

  blue;

  else if(source= =redButton)color=

  Color.red;

  ;

  ;

  }

  private JButton yellowButton;

  private JButton blueButton;

  private JButton redButton;

  private JLabel jl;

  }

  class ButtonFrame extends JFrame{

  public ButtonFrame(){

  setTitle("exam l6");

  setSize(300,200);

  addWindowListener(new WindowAdapter(){

  public void windowClosing(WindowEvent e){

  System.exit(O);

  }

  });

  Container contentPane=getContentPane();

  contentPane.add(new ButtonPanel());

  }

  }

  public class java2{

  public static void main(String[]args){

  JFrame frame=new ButtonFrame();

  frame.show();

  }

  }

  参考解析:

  第1处:jl.setForeground(color)

  第2处:jl.repaint()

  【解析】在构件类的方法中,setForeground()为设置构件的前景色,repaint()为重新绘制构件。

  18[简答题]本题的功能是监听键盘键的敲击,并显示在窗口中。

  import javax,.swing.*;

  importjava.awt.*; ,

  import java.awt.event.*;

  public class java3 extends JFrame extends KeyListener

  {

  private String linel=""line2=""

  private String line3=""

  private JTextArea textArea;

  public java3()

  {

  super("java3");

  textArea=new JTextArea(10,15);

  textArea.setText("Press any key on the key-

  board…");

  textArea.setEnabled(false);

  addKeyListener(this);

  getContentPane().add(textArea);

  setSize(350,100);

  show();

  }

  public void keyPressed(KeyEvent e)

  {

  linel="Key pressed:"+e.getKeyText(e.

  getKeyCode());

  setLines2and3(e);

  }

  public void keyReleased(KeyEvent e)

  {

  linel="Key released:"+e.getKeyText(e.

  getKeyCode());

  setLines2and3(e):

  }

  public void keyTyped(KeyEvent e)

  {

  Linel="Key typed:"+e.getKey);

  setLines2and3(e);

  }

  private void setLines2and3(KeyEvent e)

  {

  line2="This key is"+(e.isActionKey()?""

  :"not")+"an action key";

  String temp=e.getKeyModifiersText(e.get-

  Modifiers());

  hne3="Modifier keys pressed:"+(temp.e-

  quals("")?"none":temp);

  textArea.setText(linel+" "+line2+" "

  +line3+" ");

  }

  public static void main(String args[])

  {

  java3 app=new java3();

  addWindowListener(new Windowadapted()

  {

  public void windowClosing(WindowEvent e)

  {

  System.exit(0);

  }

  });

  }

  }

  参考解析:

  第1处:extends JFrame implements KeyListener

  第2处:linel="Key typed:"+e.getKeyChar()

  第3处:app.addWindowListener(new WindowAdapter())

  【解析】第1处实现接口应用implements;第2处Java是大小写敏感的,获得键盘值应使用getKeyChar()方法;第 3处窗体级监测器应注册给接收类。

【计算机二级考试Java练习题及答案】相关文章:

计算机二级Java练习题及答案201706-03

2017计算机二级《Java》练习题及答案07-24

计算机二级考试Java试题及答案10-24

计算机二级考试《Java》试题及答案09-04

2024全国计算机二级JAVA考试练习题及答案05-19

2017计算机二级《JAVA》基础练习题及答案07-31

2023计算机二级《Java》单选练习题及答案12-20

计算机二级Java巩固练习题及答案201709-07

计算机二级《JAVA》考试练习题08-02

2016计算机二级考试Java试题及答案06-24