Java考试题1.docx

上传人:b****3 文档编号:3489114 上传时间:2022-11-23 格式:DOCX 页数:22 大小:31.39KB
下载 相关 举报
Java考试题1.docx_第1页
第1页 / 共22页
Java考试题1.docx_第2页
第2页 / 共22页
Java考试题1.docx_第3页
第3页 / 共22页
Java考试题1.docx_第4页
第4页 / 共22页
Java考试题1.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

Java考试题1.docx

《Java考试题1.docx》由会员分享,可在线阅读,更多相关《Java考试题1.docx(22页珍藏版)》请在冰豆网上搜索。

Java考试题1.docx

Java考试题1

Java练习题

一、填空题

(1)Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?

(B)

A)安全性B)多线性C)跨平台D)可移植

(2)下列哪个类声明是正确的?

(  D)。

A)abstractfinalclassHI{···}B)abstractprivatemove(){···}

C)protectedprivatenumber;D)publicabstractclassCar{···}

(3)下列关于for循环和while循环的说法中哪个是正确的?

(  D  )。

A)while循环能实现的操作,for循环也都能实现

B)while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

C)两种循环任何时候都可替换

D)两种循环结构中都必须有循环体,循环体不能为空

(4)异常包含下列那些内容?

(  C  )。

A)程序中的语法错误B)程序的编译错误

C)程序执行过程中遇到的事先没有预料到的情况

D)程序事先定义好的可能出现的意外情况

(5)Character流与Byte流的区别是(  C  )。

A)每次读入的字节数不同B)前者带有缓冲,后者没有

C)前者是块读写,后者是字节读写D)二者没有区别,可以互换使用

(6)监听事件和处理事件( B   )。

A)都由Listener完成B)都由相应事件Listener处登记过的构件完成

C)由Listener和构件分别完成D)由Listener和窗口分别完成

(7)Applet可以做下列那些操作?

( A )。

A)读取客户端文件B)在客户端主机上创建新文件

C)在客户端装载程序库D)读取客户端部分系统变量

(8)下列哪个属于容器的构件?

(  A  )。

A)JFrameB)JButtonC)JPnelD)JApplet

(9)如果希望所有的控件在界面上均匀排列,应使用下列那种布局管理器?

(B)

A)BoxLayoutB)GridLayoutC)BorderLayoutD)FlowLouLayout

(10)为实现多线程之间的通信,需要使用下列那种流才合适?

(  D  )。

A)FilterstreamB)FilestreamC)RandomaccessstreamD)Pipdestream

(11)编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(  B  )。

 

 A..java   B..class  C..html       D..exe

(12)设x=1,y=2,z=3,则表达式 y+=z--/++x 的值是(   A )。

 A.3     B. 3.5    C.4   D. 5

(13)在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的(  D )方法来完成一些画图操作。

 A.start()       B.stop()   C.init()      D.paint()

(14)不允许作为类及类成员的访问控制符的是(   C )。

 A.public    B. private   C.static     D. protected

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

   A. static void method()    B.public void method()   

   C.final void method()       D.abstract void method()

(16)在Java中,所有类的根类是(  A  )。

A.java.lang.ObjectB.java.lang.ClassC.java.applet.AppletD.java.awt.Frame(17)在Java中,用Package语句说明一个包时,该包的层次结构必须是(  B  )。

A.与文件的结构相同B.与文件目录的层次相同C.与文件类型相同D.与文件大小相同

(18)在读字符文件Employee.dat时,使用该文件作为参数的类是(  D  )。

A.BufferReaderB.DataInputStreamC.DataOutoutStreamD.FileInputStream

(19)下列构造方法的调用方式中,正确的是( C   )。

A.按照一般方法调用B.由用户直接调用C.只能通过new自动调用D.被系统调用

(20)类Panel默认的布局管理器是(  C  )。

A.GridLayoutB.BorderLayoutC.FlowLayoutD.CardLayout

(21)在Java中,能实现多重继承效果的方式是(  C  )。

A.内部类B.适配器C.接口D.同步

(22)char类型的取值范围是( B   )。

A.2-7~27-1B.0~216-1C.-215~215-1D.0~28-1

(23)能够支持javadoc命令的注释语句是(    D)。

A./**...//B./*...*/C.//D./**...*/

(24)十进制数16的16进制表示格式是(  A  )。

A.0x10B.0x16C.0xAD.16

(25)int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是(   D )。

A.publicintMAX_LENGTH=100

B.finalintMAX_LENGTH=100

C.publicconstintMAX_LENGTH=100

D.publicfinalintMAX_LENGTH=100

 26.下列不是InputStream子类的是(C)。

  A、文件输入流FileInputStream

  B、对象输入流ObjectInputStream

  C、字符输入流CharInputStream

  D、压缩文件输入流ZipInputStream

(27)下列方法中可以用来创建一个新线程的是(  C  )。

A.实现java.lang.Runnable接口并重写start()方法

B.实现java.lang.Runnable接口并重写run()方法

C.实现java.lang.Thread类并重写run()方法

D.实现java.lang.Thread类并重写start()方法

(28)下列关于JavaApplication与Applet的说法中,正确的是(  C  )。

A.都包含main()方法

B.都通过“appletviewer”命令执行

C.都通过“javac”命令编译

D.都嵌入在HTML文件中执行

(29)当启动Applet程序时,首先调用的方法是(   B )。

A.stop()B.init()C.start()D.destroy()

(30)下列关于线程优先级的说法中,正确的是(  C  )。

A.线程的优先级是不能改变的

B.线程的优先级是在创建线程时设置的

C.在创建线程后的任何时候都可以设置

D.B和C

(31)当浏览器重新返回Applet所在页面时,将调用Applet类的方法是 (  A  )。

A.start() B.init() C.stop() D.destroy() 

(32)按照Java的标识符命名规范,下列表示一个类的标识符正确的是 ( B   )。

A.Helloworld B.HelloWorld C.helloworld D.helloWorld 

(33)下列代码中,将引起一个编译错误的行是 (   D )。

1)public class Test{ 

2) int m,n; 

3) public Test() {} 

4) public Test(int a) {m=a;} 

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

6) Test t1,t2; 

7) int j,k; 

8) j=0;k=0; 

9) t1=new Test(); 

10) t2=new Test(j,k); 

11) } 

12)} 

A.第3行 

B.第5行 

C.第6行 

D.第10行 

(34)下列程序的功能是在监控台上每隔一秒钟显示一个字符串“Hello”,能够填写在程序中下划线位置,使程序完整并能正确运行的语句是 (   D )。

public class Test implements Runnable{ 

public static void main(String args[]){ 

Test t=new Test(); 

Thread tt=new Thread(t); 

tt.start(); 

public void run(){ 

for(;;){ 

try{ 

}catch( e){} 

System.put.println("Hello"); 

A. sleep(1000) 

InterruptedException 

B. sleep(1000) 

InterruptedException 

C. Thread.sleep(1000) 

RuntimeException 

D. Thread.sleep(1000) 

InterruptedException 

(35)阅读下列代码后 

public class Person{ 

int arr[]=new int[10]; 

public static void main(String args[]){ 

System.out.println(arr[1]); 

正确的说法是(   A )。

A. 编译时将产生错误 B. 编译时正确,运行时将产生错误 

C. 输出零 D. 输出空 

(36)在Java中,负责对字节代码解释执行的是( B)。

A.垃圾回收器B.虚拟机C.编译器D.多线程机制

(37)下列叙述中,正确的是(  A  )。

A.Java语言的标识符是区分大小写的

B.源文件名与public类名可以不相同

C.源文件扩展名为.jar

D.源文件中public类的数目不限

(38)下列属于合法的Java标识符是(    A)。

A._catB.5booksC.+staticD.-3.14159

(14)在Java中,表示换行符的转义字符是(  A  )。

A.\nB.\fC.'n'D.\dd

(39)在Java中,由Java编译器自动导入,而无需在程序中用import导入的包是(  D)。

A.java.appletB.java.awtC.java.utilD.java.lang

二、填空题

(1)对象串行化可以很容易地扩展成支持Java对象的(  持续存储或持久存储  ),它提供了对象从流中重建的补充方式.

(2)Vector类的对象是通过capacity和capacityIncrement两个值来改变集合的容量,其中capacity表示集合最多能容纳的(元素个数),capacityIncrement表示每次增加多少容量,不是一个一个增加.

(3)下列程序的功能是判断某一年是否为闰年.请在横线处填入适当内容,使程序能够正确运行.

importjava.io.*;

publicclassLeapYear{

publicstaticvoidmain(Stringarge[])throwsIOException{

InputStreamReaderir;

BufferdeReadwein;

ir=newInputStreamReader(System.in);

in=newBufferedReader(ir);

System.out.println(“输入年份是:

”);

Strings=( in.readLine()   );

intyear=Integer.parseInt(s);

if(year%4==0&&year%100!

=0//year%400==

0)

{System.out.println(""+year+"年是闰年.");

}else{System.out.println(""+year+"年不是闰年..");}}}

(4)下面程序对数组中每个元素赋值,然后按逆序输出.请在横线处填入适当内容,使程序能正常运行.

importjava.io.*;

publicclassArrayTest{

publicstaticvoidmain(Stringargs[]){

inti;

inta[]=newint[5];

for(i=0;i<5;i++)

a[i]=i;

for((i=a.Length-1);i>=0;i--)

System.out.println("a["+i+"]="a[i]);

}

}

(5)下列程序的功能是:

输入一个姓名,程序运行后,输出“姓名Welcomeyou!

”.例如,输入“张三Welcomeyou!

”.请在下面横线处填入正确的方法名,使程序可以正确运行.

importjava,awt,*;

importjava.awt.event.*;

publicclasswelcomenYou{

publicstaticvoidmain(Stringargs[]){

newFrameInOut();}}

classFrameInOutextendsFrameimplementsActionListener

{

Labelprompt;

TextFieldinput,output;

Buttonbtnn;

voidFramInOut()

{

prompt=newLabel("Pleaseinputyourname");

input=newTextField(10);

output=newTextField(25);

btnn=newButton("Class");

(  setLayout  )(newFlowLayout());

add(prompt);

add(input);

add(output);

add(btnn);

input.addActionListener(this);

btnn.addActionListener(this);

setSize(300.200);

show();

}

publicvoidactionperformed(ActionEvente){

if(e.getSource()==input)

output.setText(input.getText()+"Welcomeyou!

");

else

{

dispose();

system.exit(0);

}}}

(6)开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码、解释运行字节码。

(7)如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是(  Applet  )类的子类并且存储该源程序文件的文件名为( MyApplet   )。

(8)如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器(javac.exe )编译该源程序文件将产生( 3)个文件名与类名相同而扩展名为(.class)的字节码文件。

(9)在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用(  2  )字节内存空间,这样,无论是中文字符还是英文字符,都是占用(  2  )字节内存空间。

(10)设x=2,则表达式(x++)/3的值是(  0  )。

(11)若x=5,y=10,则x=y的逻辑值分别为(   ture )和 ( false   )。

(12)(抽象(abstract)方法)方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。

(最终(final)方法)方法是不能被当前类的子类重新定义的方法。

(13)创建一个名为MyPackage的包的语句是(package  MyPackage;),该语句应该放在程序的位置为:

(应该在程序第一句)。

(14)设有数组定义:

int  MyIntArray[]={10,20,30,40,50,60,70};  则执行以下几个语句后的输出结果是( 120   )。

    int s=0;

   for (int i=0;i

                if (i%2==1)   s+=MyIntArray[i];

  System.out.println(s);

(15)在Java程序中,通过类的定义只能实现(  单  )重继承,但通过接口的定义可以实现( 多)重继承关系。

(16)Java源文件中最多只能有一个(  public  )类,其它类的个数不限。

 

(17)在Java中所实现的多维数组,实际上是由一维数组构成的(  数组的数组  )。

 

(18)StringBuffer类提供(   可修改 )字符串对象的表示。

  

(19)每个Applet程序必须有一个类是 (  Applet  )类的子类。

(20)线程在生命期中要经历5种状态,分别是新建状态、可运行状态、运行状态、(  阻塞  )状态和终止状态。

(21)FileInputStream是字节流;BufferedWriter是字符流;ObjectOutputStream是(  对象流  )。

  

(22)break语句最常见的用法是在switch语句中,通过break语句退出switch语句,使程序从整个switch语句后面的 (  第一条语句  ) 开始执行。

(23)请阅读下列程序代码,然后将程序的执行结果补充完整。

 

public class throwsException { 

static void Proc(int sel) 

throws ArithmeticException,ArrayIndexOutOfBoundsException{ 

System.out.println("In Situation"+sel); 

if(sel==0){ 

System.out.println("no Exception caught"); 

return; 

}else if(sel==1){ 

int iArray[]=new int[4]; 

iArray[1]=3; 

} } 

public static void main(String args[]){ 

try{ 

Proc(0); 

Proc

(1); 

}catch(ArrayIndexOutOfBoundsException e){ 

System.out.println("Catch"+e); 

}finally{ 

System.out.println("in Proc finally"); 

执行结果:

 

InSituation0 

no Exception caught 

(    InSituation1)

in Proc finally 

答案:

In Situation 1 

(24)当使用Thread t=new Thread(r)创建一个线程时,表达式:

r instanceof Thread的值为(  false  ) 。

 

三、简答题

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

答:

基本数据类型包括byte、int、char、long、float、double、boolean和short。

java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。

为了提高效率节省空间,我们应该用StringBuffer类。

2、面向对象的特征有哪些方面?

简述每个特征。

1.抽象:

抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当

前目标有关的方面。

抽象并不打算了解全部问题,而只是选择其中的一部分,

暂时不用部分细节。

抽象包括两个方面,一是过程抽象,二是数据抽象。

2.继承:

继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确

表述共性的方法。

对象的一个新类可以从现有的类中派生,这个过程称为类继

来源:

(-.面向对象的特征有哪些方面_小囡_新浪博客

承。

新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类

称为新类的基类(父类)。

派生类可以从它的基类那里继承方法和实例变量,

并且类可以修改或增加新的方法使之更适合特殊的需要。

3.封装:

封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。

面向对

象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的

对象,这些对象通过一个受保护的接口访问其他对象。

4.多态性:

多态性是指允许不同类的对象对同一消息作出响应。

多态性包括参数化多态性

和包含多态性。

多态性语言具有灵活、抽象、行为共享、代码共享的优势,很

好的解决了应用程序函数同名问题。

3、int和Integer有什么区别?

答:

Java提供两种不同的类型:

引用类型和原始类型(或内置类型)。

Int是java的原始数据类型,Integer是java为int提供的封装类。

Java为每个原始类型提供了封装类。

引用类型和原始类型的行为完全不同,并且它们具有不同的语义。

引用类型和原始类型具有不同的特征和用法,它们包括:

大小和速度问题,这种类型以哪种类型的数据结构存储,当引用类型和原始类型用作某个类的实例数据时所指定的缺省值。

对象引用实例变量的缺省值为null,而原始类型实例

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1