2019年6月二级Java练习题-总

发布于 2019-05-15 11:01  编辑:simi
0
计算机等级考试题库 扫码微信刷题


如果你还没有开始刷二级Java练习题的,请务必开始刷题,现在开始刷也来得及,不要放弃;如果你还没有题库忐忑不安的,请到文末点链接进入考无忧官网购买考试原题库。



二级Java练习题

1

1final, finally, finalize的区别?

答:final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。

finally是异常处理语句结构的一部分,表示总是执行。

finalizeObject类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。

 

2sleep( ) wait( ) 有什么区别?

答:sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep不会释放对象锁。

waitObject类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。

 

3OverloadOverride的区别。Overloaded的方法是否可以改变返回值的类型?

答:方法的重写Overriding和重载OverloadingJava多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)Overloaded的方法是可以改变返回值的类型。

 

4abstract classinterface有什么区别?

答:声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。

接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

 

5、启动一个线程是用run( )还是start( )?

答:启动一个线程是调用start( )方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行。这并不意味着线程就会立即运行。run( )方法可以产生必须退出的标志来停止一个线程。

 

 

 

2

1String是最基本的数据类型吗?

答:基本数据类型包括byteintcharlongfloatdoublebooleanshort

java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们应该用StringBuffer类。

 

2、面向对象的特征有哪些方面?简述每个特征。

 

3int Integer 有什么区别?

答:Java 提供两种不同的类型:引用类型和原始类型(或内置类型)Intjava的原始数据类型,Integerjavaint提供的封装类。Java为每个原始类型提供了封装类。引用类型和原始类型的行为完全不同,并且它们具有不同的语义。引用类型和原始类型具有不同的特征和用法,它们包括:大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关。

 

4String StringBuffer的区别?

答:JAVA平台提供了两个类:StringStringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变的时候你就可以使用StringBuffer。典型地,你可以使用StringBuffers来动态构造字符数据。

 

5、运行时异常与一般异常有何异同?

答:异常表示程序运行过程中可能出现的非正常状态,运行时异常表示虚拟机的通常操作中可能遇到的异常,是一种常见运行错误。java编译器要求方法必须声明抛出可能发生的非运行时异常,但是并不要求必须声明抛出未被捕获的运行时异常。

 

 

 

3

1.下列的哪个选项可以正确用以表示八进制值8?

A.0x8

B.0x10

C.08

D.010

参考答案:D

 

2.intpublic成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是

A.public int MAX_LENGTH=100

B.final int MAX_LENGTH=100

C.public const int MAX_LENGTH=100

D.public final int MAX_LENGTH=100

参考答案:D

 

3.十进制数1616进制表示格式是

A.0x10

B.0x16

C.0xA

D.16

参考答案:A

 

4.char类型的取值范围是

A.2-7 ~27 -1

B.0~216-1

C.-215 ~215 -1

D.0~28-1

参考答案:B

 

5.下列哪项是将一个十六进制值赋值给一个long型变量?

A.long number = 123L;

B.long number = 0123;

C.long number = 0123L;

D.long number = 0x123L;

参考答案:D

 

6.下列哪个选项是short型数据的取值范围?

A.-128 +127

B.-32768 +32767

C.-2147483648 +2417483647

D.-3.40282347E38 +3.40282347E38

参考答案:B

 

7.Java中访问限定符有 14 ,protected,privatedefault等。

参考解析:public

 

8.Java程序中基本的结构单位。

参考解析:类

 

9.下列哪个选项是合法的标识符?

A.123

B._name

C.class

D.1first

参考答案:B

 

10.下列对于线性链表的描述中正确的是( )

A.存储空间不一定是连续,且各元素的存储顺序是任意的

B. 存储空间不一定是连续,且前件元素一定存储在后件元素的前面

C. 存储空间必须连续,且前件元素一定存储在后件元素的前面

D. 存储空间必须连续,且各元素的存储顺序是任意的

参考答案:A

 

11.下列关于栈序正确的是

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

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

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

D.以上三种说法都不对

参考答案:A

 

12.数据的存储结构是指()

A.存储在外存中的数据

B.数据所占的存储空间量

C.数据在计算机中的顺序存储方式

D.数据的逻辑结构在计算机中的表示

参考答案:D

 

 

 

4

1.下列关于Java语言特点的叙述中,错误的是( )

A.Java是面向过程的编程语言

B.Java支持分布式计算

C.Java是跨平台的编程语言

D.Java支持多线程

 

2.可以使当前同级线程重新获得运行机会的方法是( )

A.Sleep()

B.join()

C.yield()

D.interrupt()

 

3.下列语句中,属于多分支语句的是( )

A.if语句

B.for语句

C.switch语句

D.do while语句

 

4.阅读下列代码

public class Test2005{

public static void main(String args[]){

String s="Test";

switch(s){

case"Java"System.out.print("Java");

break;

case"Language"System.out.print("Lan-

guage");

break;

case"Test"System.out.print("Test");

break;

}

}

}

其运行结果是( )

A.Java

B.Language

C.Test

D.编译时出错

 

5.在程序读入字符文件时,能够以该文件作为直接参数的类是( )

A.FileReader

B.BufferedReader

C.FilelnputStream

D.ObjectlnputStream

 

6.下列描述中,正确的是( )

A.Serializable接口中定义了抽象方法

B.Serializable接口中定义了常量

C.Serializable接口中没有定义抽象方法,也没有定义常量

D.Serializable接口中定义了成员方法

 

7.请阅读下面程序,说明该程序创建线程使用的方法是( )

public class ThreadTest

{

public static void main(String args[])

{

Thread tl=new Thread(new HolloWorld());

Thread t2=new Thread(new HolloWorld());

tl.start();

t2.Start();

}

}

class HolloWorld implements Runnable

{

int i;

public void run()

{

while(true)

{

System.out.println("HolloWorld"+i++);

if(i= =5)break;

}

}

}

A.继承Thread

B.实现Runnable接口

C.tl.start()

D.t2.start()

 

8.java.io包的File类是( )

A.字符流类

B.字节流类

C.对象流类

D.非流类

 

9.为保护本地主机,对Applet安全限制中正确的是( )

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

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

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

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

 

10.请阅读下面程序

public class ExampleStringBuffer{

public static void main(String[]args){

StringBuffer sb=new StringBuffer("test");

System.OUt.println("buffer="+sb);

System.OUt.println("length="+sb.length

());}}

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

A.10

B.4

C.20

D.30

 

1.A。解析:Java是新一代编程语言,具有很多特点:简单易学;利用面向对象技术;分布式计算;健壮性(鲁棒性);安全性;跨平台(即体系结构中立);可移植性;解释执行;高性能;多线程;动态性。因此,本题的正确答案是A

 

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

 

3.C。解析:do while语句和for语句是循环语句;it语句和switch语句是分支语句。而if语句称为条件语句, switch语句称为多分支语句。

 

4.D。解析:本题考查switch语句的用法。switch语句是多分支语句,即根据表达式的值来执行多个操作中的一个。在switch语句中,”表达式”的返回值类型必须是这几种类型

之一:intbytecharshort。本题中,switch的表达式s是一个字符串Strin9类型的值,它不是intbytecharshort中的任意一个。因此表达式s的类型不对,编译时出错。

 

5.A。解析:FileReaderBufferedReader是字符类输入流。FileInputStream是字节输入流。对象串行化时,需要使用ObjectlnputStream类中提供的方法从对象流中读取对象。所以,在程序读入字符文件时,要使用字符流FileReaderBufferedReader。但是FileReader的参数是读入的文件,而BufferedReader的参数是FileReader流的一个对象。因此,本题的正确答案是A

 

6.C。解析:在java.i0包中,接口Serializable是实现对象串行化的工具。实际上,Serializable接口是一个空接口,它里面既没有定义抽象方法,也没有定义常量。Serializable接口的目的只是简单地标识一个类的对象是可以被串行化的。

 

7.B。解析:本题考查线程的创建。在Java中,创建线程有两种方法:①通过实现Runnable接口创建线程。Runnable接口中只定义了一个run()方法作为线程体。②通过继承Thread类创建线程,Thread类本身实现了Runnable接口。创建的新的线程不会自动运行,必须调用start()方法才能运行。本题中HolloWorld类实现了Runnable接口。

 

8.D。解析:Java.io包中的类可以处理不同类型的流,比如字节流、字符流、对象流、非流类等。File类就是一个重要的非流类,它是以一种系统无关的方式表示一个文件对象的属性。

 

9.D。解析:Java平台为了防范恶意程序的攻击,保护本地主机,对Applet作了如下安全限制:①Applet不能运行任何本地可执行程序。②禁止加载本地库或方法。③禁止读、写本地计算机的文件系统。④禁止向提供Applet之外的任何主机建立网络连接。⑤不能读取某些系统信息。⑥由一个Applet弹出的窗口外观上与一个Application弹出的窗口不同,Applet弹出的窗口中会有警告提示信息,帮助用户区分Applet窗口与可信的Application窗口。

 

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

 

 

 

5

1.下列与数据元素有关的叙述中,不正确的是( )

A.数据元素是数据的基本单位,即数据集合中的个体

B.数据元素是有独立含义的数据最小单位

C.数据元素又称为结点

D.数据元素又称为记录

 

2.S最多能容纳4个元素,现有6个元素按ABCDEF的顺序进栈,下列( )序列不是可能的出栈序列。

A.CBEDAF

B.CDBFEA

C.ADECBF

D.AFEDCB

 

3.在电子邮件程序向邮件服务器中发送邮件时,使用的是简单邮件传输协议,下列( )是简单邮件传输协议。

A.POP3

B.IMAP

C.HTTP

D.SMTP

 

4.对一个由n个关键码组成的序列,借助排序过程选出其中最大的关键码,要求关键码比较次数和移动次数最少,则最佳排序方法是( )

A.归并排序

B.直接插入排序

C.直接选择排序

D.快速排序

 

5.对线性表进行二分法查找,其前提条件是( )

A.线性表以顺序方式存储,并已按关键码值排好序

B.线性表以顺序方式存储,并已按关键码值的查找频率排好序

C.线性表以有序方式存储,并已按关键码值排好序

D.线性表以有序方式存储,并已按关键码值的查找频率排好序

 

6.Java的核心包中,提供编程应用的基本类的包是( )

A.java.lang

B.java.util

C.java.applet

D.java.rmi

 

7.下列关于Javaimport语句规定自叙述中,错误的是( )

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

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

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

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

 

8.在编译Java程序时,用于指定生成.class文件位置的选项是( )

A.-9

B.-d

C.-verbose

D.-nowarn

 

9.下列方法中,不属于WindowListener接口的是( )

A.windowOpened()

B.windowClosed()

C.windowActivated()

D.mouseDragged()

 

10.运行Java程序需要的工具软件所在的目录是( )

A.JDKbin目录

B.JDKdemo目录

C.JDKlib目录

D.JDKire目录

 

1.B。解析:数据元素是数据的基本单位,即数据集合中的个体。有些情况下也把数据元素称为结点、记录、表目等。一个数据元素可由一个或多个数据项组成,数据项是有独立含义的数据最小单位,其值能唯一确定一个数据元素的数据项。

 

2.D。解析:栈的特性为后进先出,而栈S只能容纳4个元素。当F进栈时,说明栈中有已有BCDE四个元素,所以F无法进栈。

 

3.D。解析:在电子邮件程序向邮件服务器中发送邮件时,使用的是简单邮件传输协议(SMTP),而在电子邮件程序从邮件服务器中读取邮件时,可以使用邮局协议(POP3)

 

4.C。解析:直接选择排序第一遍扫描就可以把最大的关键码找出来(不必等到排序结束),而其他几种排序方法都必须等到排序完成才能找到最大关键码。

 

5.A。解析:二分法查找是一种效率较高的线性表查找方法。要进行二分法查找,则线性表结点必须是按关键码值排好序的,且线性表以顺序方式存储。

 

6.A。解析:Java的核心包一共有l2个,其中:java.lan9包中封装了所有编程应用的基本类;java.util包提供实用程序类和集合类,如系统特性定义和使用、日期函数类、 集合等常用工具;java.applet包为Applet提供执行需要的所有类,主要是访问Applet内容的通信类;java.rmi包提供程序远程方法调用所需的类。因此,本题的正确答案是A

 

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

 

8.B。解析:javac.exeJava编译器,能将源程序代码编译成字节码,以.class扩展名存入Java工作目录中。它的命令格式为:javac[选项]文件名。其中[选项]包括以下几个:-g。输出文件中加行号以及局部变量信息,为调试程序时用。-o对类文件进行优化编译。-nowarn 关闭警告信息,只显示错误信息。-verbose 显示源代码文件和字节码文件的相关信息。-d<目录> 指定存放生成的类(.class)文件的位置根据上述介绍可知,在编译Java程序时,可以通过选项-d来指定生成的.class文件的位置。因此,本题的正确答案是B

 

9.D。解析:WindowListener接口包含的方法是:①Window Activated(WindowEvent);WindowOlpened(WindowEvent);WindowClosed(WindowEvent);WindowClosing(WindowEvent);WindowDeactivated(WindowEvent);WindowDeiconified(WindowEvent)windowlconified(WindowEvent)。所以D选项错误。

 

10.A。解析:运行JavaJDK一共包含五个目录,分别是:bin目录,该目录包含Java编译器、解释器和许多工具(如服务器工具、IDLpackage工具等);lib目录,该目录包含Java库文件;jre目录,该目录是Java程序运行环境的根目录,它下面包含bin子目录,包括平台所用工具和库的可执行文件以及DLL文件;demo目录,该目录包含源代码的程序示例;include目录,该目录包含Win32子目录,都是本地方法的文件。



仰望天空时,什么都比你高,你会自卑;俯视大地时,什么都比你低,你会自负;只有放宽视野,把天空和大地尽收眼底,才能在苍穹泛土之间找到你真正的位置。无须自卑,不要自负,坚持自信,坚持复习计算机等级考试题库-二级Java练习题




文章推荐:

全国计算机等级考试可以不考一级直接考二级吗?

2019年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”

全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)


温馨提示:

考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office

想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库

想知道更多关于计算机等级考试题库的近期资讯吗?点击进入>>>计算机等级考试题库资讯


本文网址:http://www.k51.com.cn/info/jsjdjks/1905/1552112.html
选择分享到: