77范文网 - 专业文章范例文档资料分享平台

《JAVA语言程序设计》期末考试试题及答案2(题库超级大全 - 应考

来源:网络收集 时间:2020-06-08 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

JAVA语言程序设计考试试题及部分答案

一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。

1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0;

while( (m++) < ( -- n) ) ++k;

A) 0 B) 1 C) 2 D) 3

2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66;

3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承

4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1;

A) 10 B) 121 C) 11 D) 100

5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ;

其中0≤k≤3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0]

7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B

8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16;

if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8

9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; }

A) 31 B) 32 C) 2 D) 33

10.下面语句执行后,i 的值是( B )。

for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7

11.设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y

C) z > ( y + x ) D) x < y & ! ( x < z ) 12.下列语句序列执行后,i的值是( D )。 int i=16;

do { i/=2; } while( i > 3 ); A) 16 B) 8 C) 4 D) 2

13.以下由 for 语句构成的循环执行的次数是( B )。 for ( int i = 0; true ; i++) ; A) 有语法错,不能执行 B) 无限次 C) 执行1次 D) 一次也不执行

14.定义类头时能使用的修饰符是(C )。

A) private B) static C) abstract D) protected

15.设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值, 正确的switch语句是D )。

A) switch (x + y) B) switch ( ch + 1 ) { ...... } { ...... } C) switch ch D) switch ( a + b ); { ...... } { ...... }

16. 下列最终属性 i 的定义中,正确的是( )。 A) static final int i=100; B) final int i=1.2; C) final i='w'; D) final char i;

17. 下列类定义中,不正确的是(C )。 A) class x { .... }

B) class x extends y { .... }

C) static class x implements y1,y2 { .... } D) public class x extends Applet { .... }

18. 设 x、 y为已定义的类名,下列声明x类的对象x1的语句中正确的是( )。 A) static x x1; B) public x x1=new x(int 123); C) y x1; D) x x1=x( );

19. 设 i、j、k 为类 x 中定义的 int 型变量名,下列类 x 的构造函数中不正确的是(B )。 A) x( int m){ ... } B) void x( int m){ ... }

C) x( int m, int n){ ... } D) x( int h,int m,int n){ ... } 20. 下列方法定义中,正确的是( A )。

A) int x( ){ char ch='a'; return (int)ch; } B) void x( ){ ...return true; } C) int x( ){ ...return true; } D) int x( int a, b){ return a+b; }

21. 用于定义类成员的访问控制权的一组关键字是( D )。 A) class, float, double, public B) float, boolean, int, long C) char, extends, float, double D) public, private, protected 22. 不能构成循环的语句是( C )。

A) for 语句 B) while 语句 C) switch 语句 D) do__while 语句 23. 下列程序段执行后 b3 的结果是( D )。 boolean b1=true, b2, b3; 24= b1 ? b1 : b2;

A) 0 B) 1 C) true D) false

25 下面数据结构中,属于非线性的是( B )。 A) 线性表 B) 树 C) 队列 D) 堆栈

11. 设有定义 int i=123; long j=456; 下面赋值不正确的语句是( D )。 A) j=i; B) j=(long)i; C) i=(int)j; D) i=j; 二、填空题:(每空1分) 1. 构造函数_没__有返回值。

2. Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和 ___ double _______两种具体类型。

3. 创建类对象的运算符是__ new。

4. 当整型变量n的值不能被13除尽时,其值为 false 的Java语言表达式是__n==0___________ 。 5. 在Java语言中,所有的数组都有一个lenght属性,这个属性存储了该数组的__元素个数。 6. 定义类就是定义一种抽象的______父类______,它是所有具有一定共性的对象的抽象描述。 7. 在Java语言中,使用__平台无关___、___java虚拟机___等技术,实现软件重用。 8. 表达式3/6 * 5的计算结果是____0____ 。 9.下面是一个类的定义:

public class _int Myclass___________ {

int x, y;

Myclass ( int i, ___=0____) // 构造函数 { x=i; y=j; } }

10.下面是一个Java Application 的主类的定义,其功能是输出所有命令行参数。 import java.io.*; public class MyClass {

public static void main(String args[ ])

{

if( args.length !=_0__)

for(int i=0; i < args.length; i++) System.out.println(_\else System.out.println(没有命令行参数); } }

11下面是一个小程序的主类myprogram的定义, 其中A、B是该主类所在源程序中已定义的另两个类的类名: import java awt.*; import java applet.*;

public class myprogram extends Applet//定义小程序的主类 {

A a; B b;

public _____ myprogram ___ init( ) { a=new A( ); b=___new__ B( ); } }

12. Java的复合数据类型有 : 类、数组和___接口____等。 Java的简单数据类型有 : 数值类型(整形和浮点类型),自负类型和布尔类型

13. 表达式3/6 * 5的计算结果是_0_______ 。

14.定义初值为10的10次方的长整型变量 lvar 的语句是:_______long lvar=1*e10___________________。 15. 顺序结构、分支结构(或称选择结构)、__循环结构__________是结构化程序设计的三种基本流程控制结构。 16. 以下方法 m 的功能是求两参数之积的整数部分。 int m ( float x, float y )

{ _______k=(int)x*y___________; }

17. Java 源程序文件编译后产生的文件称为____字节码____文件,其扩展名为 ___.class_______ 。 18.Java 和 c++都是面向对象的程序设计语言。 三、程序分析:(每题4分) 1. 下面是一个排序的程序: import java.io.*;

public class Test56_Sort {

public static void main(String args[ ]) {

int[] a={42,99,5,63,95,36,2,69,200,96}; System.out.println(排序前的数据序列:); ShowArray(a); Sort(a);

System.out.println(排序后的数据序列:); ShowArray(a); }

public static void Sort(int[] x) {

int w;

for(int i=1; i

for(int j=0; jx[j+1])

{ w=x[j]; x[j]=x[j+1]; x[j+1]=w; } /* if(i==1||i==2) ShowArray(x); if(i==2) break; */ } }

public static void ShowArray(int b[]) {

for(int i=0; i

System.out.print(\System.out.println( ); } }

问题: 如果将方法Sort( )中的一对注释符(/* */)去掉,程序输出的结果是什么? 排序前的数据序列:

b[0]=42b[1]=99b[2]=5b[3]=63b[4]=95b[5]=36b[6]=2b[7]=69b[8]=200b[9]=96 b[0]=42b[1]=5b[2]=63b[3]=95b[4]=36b[5]=2b[6]=69b[7]=99b[8]=96b[9]=200 b[0]=5b[1]=42b[2]=63b[3]=36b[4]=2b[5]=69b[6]=95b[7]=96b[8]=99b[9]=200 排序后的数据序列:

b[0]=5b[1]=42b[2]=63b[3]=36b[4]=2b[5]=69b[6]=95b[7]=96b[8]=99b[9]=200 2. 请写下程序的输出结果: public class Test52 {

String str1=\String str2=\

public static void main(String args[]) {

System.out.print(str1); System.out.println(str2); } }

输出结果:

3. 请写下程序的输出结果: public class T2_4 {

public static void main(String[] args) {

int i,j; char c='*';

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

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

System.out.print(\ System.out.println(); } } }

输出结果:

4、请写下程序的输出结果: public class ex2_2 {

public static void main (String args[ ] ) {

int x , y ; byte b = 6;

float z = 1.234f ; double w = 1.23; boolean flag; x = 12 ; y = 300; flag=x>y;

System.out.println(\ flag=z>w;

System.out.println(\ } }

四、问答题:(每题5分,)

1. Java的接口和C++的虚类的相同和不同处。

由于Java不支持多继承,而有可能某个类或对象要使用分别在几个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有的方法和属性,并且接口里面的属性在默认状态下面都是 public static,所有方法默认情况下是public.一个类可以实现多个接口。 2. 垃圾回收的优点和原理。并考虑2种回收机制。

Java语言中一个显著的特点就是引入了垃圾回收机制,使c++程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有\作用域\的概念,只有对象的引用才有\作用域\。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 3,谈谈final, finally, finalize的区别。

Final-修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。

Finally-再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。

Finalize-方法名。Java 技术允许使用 finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。

4,数组有没有length()这个方法? String有没有length()这个方法?举例说明使用方法? 数组没有length()这个方法,有length的属性。 String有有length()这个方法。

5. Java中的异常处理机制的简单原理和应用。

当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就会将发生的错误表示为一个异常。违反语义规则包括2种情况。一种是JAVA类库内臵的语义检查。例如数组下标越界,会引发IndexOutOfBoundsException;访问null的对象时会引发 NullPointerException.另一种情况就是JAVA允许程序员扩展这种语义检查,程序员可以创建自己的异常,并自由选择在何时用 throw关键字引发异常。所有的异常都是java.lang.Thowable的子类。 五、程序设计:(每题11分,共33分)

1、编程:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如\我ABC\,应该截为\我AB\,输入\我ABC汉DEF\,6,应该输出为\我ABC\而不是\我ABC+汉的半个\。

2、编程求解:所有两位整数能被3整除的数的和,以及不能被3整除的数的各位数字之和。 3、设计一个程序求解e的值。精度达到1.0e-6, 4、请设计一个对N个数进行排序的程序

一、选择题(每道题只有一个正确答案,每小题2分,共30分)15道题 1、关于Java语言叙述错误的是:( C ) A.Java语言具有跨平台性 B.Java是一种面向对象的语言 C.Java语言中的类可以多继承

D.Java的垃圾收集机制自动回收程序已不再使用的对象 2、以下叙述正确的是:( B )的确台a A.构造方法必须是public方法 B.main方法必须是public方法

C.Java应用程序的文件名可以是任意的 D.构造方法应该声明为void类型

3、关于Java中数据类型叙述正确的是:( B ) A、整型数据在不同平台下长度不同

B.boolean类型数据只有2个值,true和false C.数组属于简单数据类型

D.Java中的指针类型和C语言的一样

4、设 int x=1,float y=2,则表达式 x / y的值是:( D ) A.0 B.1 C.2

D.以上都不是

5、以下语句有语法错的是:( A ) A.int x=1;y=2;z=3

B.for (int x=10,y=0;x>0;x++); C.while (x>5); D.for(; ;);

6、关于类和对象的叙述正确的是:( A )

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库《JAVA语言程序设计》期末考试试题及答案2(题库超级大全 - 应考在线全文阅读。

《JAVA语言程序设计》期末考试试题及答案2(题库超级大全 - 应考.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/1100857.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: