荟萃馆

位置:首页 > 计算机 > 计算机二级

2017计算机二级Java备考冲刺试题及答案

计算机二级考试难度不少,因此考生们要加强练习,下面是本站小编为同学们准备的2017年计算机二级Java备考冲刺试题及答案,助同学们备考计算机二级考试。

2017计算机二级Java备考冲刺试题及答案

1、以下 不是Java中有效的关键字。

A、const

B、NULL

C、false

D、this

本题考查的是Java的关键字。

Java中常量null,false,true,new,this,const,break都是小写。

故本题答案为B。

2、关于被私有访问控制符private修饰的成员变量,以下说法正确的是 。

A、可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类

B、可以被两种类访问和引用:该类本身、该类的所有子类

C、只能被该类自身所访问和修改

D、只能被同一个包中的类访问

本题考查的是成员变量的修饰符。

private修饰的变量说明变量为私有访问。只能被该类自己访问或调用,是对成员变量的高级保护。

故本题答案为C。

3、当检索一个压缩文件时,首先要建立压缩文件输入流对象。该对象 。

A、以选中的压缩文件为参数

B、以FileInputStream对象为参数

C、以InputStreamReader对象为参数

D、以BufferedReader对象为参数

本题考查的是压缩文件。

在包中提供了对压缩文件进行操作的能力。它是通过压缩文件输入流与压缩文件输出流来实现的,其分别继承自InflaterInputStream与DeflaterOutputStream。在创建压缩文件输入流时,其初始化参数是一个FileInputStream类的实例。

故本题答案为B。

4、计算机中的流是______ 。

A、流动的字节

B、流动的对象

C、流动的文件

D、流动的数据缓冲区

本题考查的是流的概念。

流,最早从C语言中引入的。其可以看成是一个流动的数据缓冲区。数据从数据源方向经过缓冲区流向数据的目的地。在传送的过程中,其传送方式是串行的。在Java中的包中定义了Java中常见流的接口与类。其中包括两个最基本的流的抽象类,它们分别是OutputStream与InputStream。其余的流都分别从这两个基本类中继承而来。

故本题答案为D。

1、结构化程序设计主要强调的是______。

A、程序的规模

B、程序的易读性

C、程序的执行效率

D、程序的可移植性

结构化程序设计主要强调的是结构化程序清晰易读,可理解性好,程序员能够进行逐步求精、程序证明和测试,以保证程序的正确性。

本题答案为B。

2、数据库设计包括两个方面的设计内容,它们是______。

A、概念设计和逻辑设计

B、模式设计和内模式设计

C、内模式设计和物理设计

D、结构特性设计和行为特性设计

数据库设计可分为概念设计与逻辑设计。

数据库概念设计的目的是分析数据间内在语义关联,在此基础上建立一个数据的抽象模型。

数据库逻辑设计的主要工作是将ER图转换为指定的RDBMS中的关系模型。

本题答案是A。

3、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为______。

A、static void method( )

B、public void method( )

C、final void method( )

D、abstract void method( )

本题考查的是修饰符的含义。

1、public修饰的方法可被其它类访问或引用。

2、abstract修饰的方法是抽象方法,抽象方法没有方法体,要使用抽象方法,必须先实现此抽象方法。

3、final修饰的方法不能被继承。

4、static修饰的方法为静态方法,静态方法不需要类的实例化就可以被类直接调用。

故要使得类名AB可以直接调用method()方法,则必须在method()前用static来修饰。

故本题答案为A。

4、偷听接口的方法返回值的类型是______。

A、int

B、String

C、void

D、Object

本题考查的是偷听。

每个事件都有自己的偷听,偷听本身是一种接口,该接口中的方法,返回值是void类型。当要为指定的类注册偷听时,就可以通过定在实现该接口的类中定义该方法,这样可以在某个事件发生后,将会自动执行相应方法中的代码。

故本题答案为C。

5、outer: for(int i=0;i<3; i++)

inner: for(int j=0;j<2;j++)

{

if(j==1) continue outer;

tln(j+ "and "+i+";");

}

以上代码输出是 。

A、0 and 0;0 and 1;0 and 2;

B、0 and 0;1 and 0;2 and 0;

C、1 and 0;1 and 1;1 and 2;

D、2 and 0;2 and 1;2 and 2;

本题考查的是多重循环。

首先介绍一下continue语句的功能:continue语句是跳过循环体中下面尚未执行的语句,回到循环体的`开始,继续下一轮的循环。

本题程序运行过程如下:

i=0:

j=0 条件j==1不成立,输出j和i,即0 and 0;

j=1 条件j==1成立,执行continue,跳过tln(j+ "and "+i+";");执行下一轮循环j=2;

j=2 条件j<2不满足,退出内层循环,继续外层循环。

i=1:

j=0 条件j==1不成立,输出j和i,即0 and 1;

j=1 条件j==1成立,执行continue,跳过tln(j+ "and "+i+";");执行下一轮循环j=2;

j=2 条件j<2不满足,退出内层循环,继续外层循环。

i=2:

j=0 条件j==1不成立,输出j和i,即0 and 2;

j=1 条件j==1成立,执行continue,跳过tln(j+ "and "+i+";");执行下一轮循环j=2;

j=2 条件j<2不满足,退出内层循环,继续外层循环。

i=3:条件i<3不满足,结束。

故本题答案为A。

编程题

1、 编写一个Java Application 程序,main程序输入10个整数给数组,通过函数getMinAndMax(int a[])得到这10个整数的最大值和最小值并输出结果。

class App {

static void getMinAndMax(int a[]) {

int min,max;

min = max = a[0];

for(int i=1;i  if(a[i]>max)

max=a[i];

if(a[i]  min=a[i]; }

tln(“Array’Max Value:”+max);

tln(“Array’Min Value:”+min);

}

public static void main(String[] args) {

int arr[] = {4,6,72,9,14,3,8,23,56,32};

getMinAndMax(arr); } }

2、编写一个完整的Java Application 程序。包含接口ShapeArea, Rectangle

类,Triangle类及Test类,具体要求如下:

⑴接口ShapeArea:

double getArea(  ):

求一个形状的面积

double getPerimeter (  ):

求一个形状的周长

⑵类 Rectangle:实现ShapeArea接口,并有以下属性和方法:

① 属性

width: double类型,表示矩形的长 height: double类型,表示矩形的高

② 方法

Rectangle(double w, double h):构造函数

toString(  )

方法 :输出矩形的描述信息,如“width=1.0,height=2.0, perimeter=6.0, area=2.0”

⑶类Triangle:实现ShapeArea接口,并有以下属性和方法:

① 属性

x,y,z: double型,表示三角形的三条边

s: 周长的1/2(注:求三角形面积公式为))(  )((zsysxss,s=(x+y+z)/2 ,开方可用(double)方法)

② 方法

Triangle(double x, double y, double z):

构造函数,给三条边和s赋初值。

toString(  ):

输出矩形的描述信息,如“three sides:3.0,4.0,5.0,perimeter=12.0,area=6.0”

⑷Test类作为主类要完成测试功能

① 生成Rectangle对象

调用对象的toString方法,输出对象的描述信息

interface ShapeArea { double getArea(  );

double getPerimeter(  );

}

class Rectangle implements ShapeArea { double width,height;

Rectangle(double w,double h) {ko width =w;

height=h;

}

public void toString(  )

{

tln("width="+width+",height="+height+", perimeter="+ getPerimeter(  )+", area="+ getArea(  ));

}

public double getArea(  )

{ return width*height;

}

public double getPerimeter(  )

{ return 2*(width+height);

} }

class Triangle implements ShapeArea { double x,y,z,s; Triangle(double x, double y, double z) { this.x =x; this.y=y;

this.z=z; s = (x+y+z)/2; }

public void toString(  )

{

tln("Three Sides:"+x+","+y+","+z+",Perimeter="+ getPerimeter(  )+", area="+ getArea(  ));

}

public double getArea(  )

{

return (s*(s-x)*(s-y)*(s-z));

}

public double getPerimeter(  )

{ return x+y+z;

} }

class test { public static void main(String[] args) { Rectangle rct = new Rectangle(4,5);

_String(  );

} }

1、下列叙述中,错误的是______。

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

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

C、JApplet的内容面板的默认布局管理器是BorderLayout

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

本题考的是布局管理器。

向JApplet中增加构件,是把构件添加到Swing Applet的内容面板中;对JApplet设置布局管理器,是对Swing Applet的内容面板进行设置,Swing Applet的内容面板的默认布局管理器是BorderLayout,所以,JApplet的内容面板的默认布局管理器是BorderLayout;而Applet的默认布局管理器是FlowLayout。

故本题答案为D

而japplet是applet的子类

2、 护本地主机,对Applet安全限制中正确的是______。

A、Applet可加载本地库或方法

B、Applet可读、写本地计算机的文件系统

C、Applet可向Applet之外的任何主机建立网络连接

D、Applet不能运行任何本地可执行程序

许多浏览器为了保护本地主机,对Applet作了如下安全限制:

1、Applet不能运行任何本地可运行程序;

2、禁止加载本地库或方法;

3、禁止读、写本地计算机的文件系统;

4、禁止向提供Applet之外的任何主机建立网络连接;

5、不能读取某些系统信息,除了Java版本号、操作系统名或版本号、文件分隔符、路径分隔符以及行分隔符之外,Applet不能获得与本地计算机有关的任何信息,如:用户名、电子邮件地址等;

6、由一个Applet弹出的窗口外观上与一个Application弹出的窗口不同,Applet弹出的窗口中将会有警告提示信息,以帮助用户区分Applet窗口与可信的Application窗口。

故本题答案为D。

3、Java对I/O访问所提供的同步处理机制是______。

A、字节流

B、过滤流

C、字符流

D、压缩文件流

本题考的是过滤流。

Java对I/O访问所提供的同步处理机制是过滤流。一般,使用一个过滤流要求首先把过滤流连接到某个I/O流上,再通过构造方法的参数去指定连接的I/O流。

故本题答案为B。

4、 Panel类的默认布局管理器是______。

A、BorderLayout

B、CardLayout

C、FlowLayout

D、GridBagLayout

本题考的是布局管理器。

FlowLayout是Panel和Applet的默认布局管理器。

故本题答案为C。

5、Java对文件类提供了许多操作方法,能获得文件对象父路径名的方法是______。

A、getAbsolutePath()

B、getParentFile()

C、getAbsoluteFile()

D、getName()

本题考的是File类提供的方法。

getAbsolutePath():得到一个文件的绝对路径名;

getParentFile():得到文件对象父路径名;

getAbsoluteFile():等价于new File(bsolutePath());

getName():得到一个不包含路径的文件名。

故本题答案为B。

1、Swing与AWT相比新增的布局管理器是______。

A、CardLayout

B、GridLayout

C、GridBagLayout

D、BoxLayout

本题考查的是布局管理器。

Swing继续沿用AWT中的布局管理器,包括FlowLayout、BorderLayout、CardLayout、GridLayout、GridBagLayout,另外Swing新增加了一个BoxLayout布局管理器。

故本题答案为D。

2、下列对Java特性的叙述中,错误的是______。

A、在编写Java子类时可以自由地增加新方法和属性

B、Java的Applet要求编程首先创建JFrame窗口

C、Java语言用解释器执行字节码

D、Java中的类一般都有自己的属性和方法

本题考查的是Applet的概念。

Applet是能够嵌入到HTML页面中,并能够在浏览器中运行的Java类,本身并不一定需要首先创建窗体,但可以使用JApple类来使用Swing构件。

Swing包中的JFrame类与创建窗口有关,是提供给java应用程序用来放置图形用户界面的一个容器。

JApplet类与JFrame一样是顶层的Swing容器。包含Swing构件的Applet必须是JApplet的子类。

故本题答案为B。

3、阅读下面求质数的程序

import .*;

public class MorePrimesTest{

public static void main(String[] args){

long[] primes=new long[20];

primes[0]=2L;

primes[1]=3L;

long number=5L;

outer:

for(int count=2;count  long limit=(long)(((double)number));

for(int i=1;i  if(number ______ primes[i]==0L){

continue outer;

}

}

primes[count++]=number;

}

for(int j=0;j  long n=primes[j];

tln(n);

}

}

}

在程序下划线处填入的正确选项是______。

A、&

B、*

C、/

D、%

本题考查的是JAVA程序结构。

所谓质数或称素数,就是一个正整数,除了本身和1以外并没有任何其他因子。任何一个整数,可以写成一串质数相乘的积。

程序中首先定义了包含有20个元素的长整型数组,为数组的第一,第二个元素赋值,并且还定义了一个长整型变量"long number=5L;",然后进入循环,该循环的作用是判断当前变量number的值是否为质数,其中(double x)方法的作用是求x的平方根,而()方法的作用是求最小的整数但不小于本身(例如:(3.14)则返回4),在本次循环中,需要判断变量number与primes[i]的取余操作,如果变量number与小于自己的平方根取整且小于count的数取余数为0,则跳出循环,将number的值写入数组中,当20个元素填满后,程序依次输出数组元素。

故本题答案为D。

4、在Java中,"目录"被看作是______。

A、文件

B、流

C、数据

D、接口

本题考查的是目录的概念。

目录在Java中作为一种特殊文件,即文件名的列表,通过类File所提供的方法,可得到文件或目录的描述信息(包括名字、路径、长度、可读、可写等),也可以生成新文件、目录、修改文件和目录,查询文件属性,重命名文件或者删除文件。

故本题答案为A。

5、下列带下划线的标识符符合Java命名约定的是______。

A、package

B、public class xyz

C、int I

D、void setCustomerName()

本题考查的是Java命名约定。

包的名字应该都是由小写单词组成。它们全都是小写字母,即便中间的单词亦是如此,所以A选项错误。

类名的第一个字母一定要大写,所以B选项错误;

变量的第一个字母应该为小写,所以C选项错误;

与属性相对应的get、set方法为:set(get)+属性名,属性名第一个字母为大写,所以D选项正确。

故本题答案为D。

6、在Java语言中,被称为内存分配的运算符是______。

A、new

B、instance of

C、[ ]

D、( )

本题考查的是JAVA关键字。

Java语言中,程序为对象动态分配内存。Java中内存分配的运算符是new。

故本题答案为A。