JAV语言程序设计方案期末考试考试及答案(DOC 46页).doc
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《JAV语言程序设计方案期末考试考试及答案(DOC 46页).doc》由用户(2023DOC)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAV语言程序设计方案期末考试考试及答案DOC 46页 JAV 语言程序设计 方案 期末考试 考试 答案 DOC 46
- 资源描述:
-
1、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) 32设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a0 = 7; C) i+ - -j; D) a(0) = 66;3Java语言的类间的继承关系是( B )。 A) 多重的 B) 单
2、重的 C) 线程的 D) 不能继承4设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 1005下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class6若已定义 byte x= 11,22,33,-66 ; 其中0k3,则对x数组元素错误的引用是( C )。 A) x5-3 B) xk C) xk+5 D) x07下列语句序列执行后,ch1 的值是( B )。 char ch1=A,ch2=W; if(ch1 +
3、 2 j ) i-; else j-; A) 15 B) 16 C) 7 D) 89下列语句序列执行后,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) 3310下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j y | x z B) x != y C) z ( y + x ) D) x y & ! ( x 3 ); A) 16 B) 8 C) 4 D) 21
4、3以下由 for 语句构成的循环执行的次数是( B )。 for ( int i = 0; true ; i+) ; A) 有语法错,不能执行 B) 无限次 C) 执行1次 D) 一次也不执行14定义类头时能使用的修饰符是(C )。 A) private B) static C) abstract D) protected15设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值, 正确的switch语句是D )。 A) switch (x + y) B) switch ( ch + 1 ) . . C) switch ch D) switch ( a
5、 + 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
6、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( ) .ret
7、urn 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
8、 b1=true, b2, b3; 24= b1 ? b1 : b2; A) 0 B) 1 C) true D) false25 下面数据结构中,属于非线性的是( 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. 创建类
9、对象的运算符是_ new。 4. 当整型变量n的值不能被13除尽时,其值为 false 的Java语言表达式是_n%13=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_) / 构造函数
10、 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(_i=+i_); else System.out.println(没有命令行参数); 11下面是一个小程序的主类myprogram的定义, 其中A、B是该主类所在源程序中已定义的另两
11、个类的类名: 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*e
12、10_。15. 顺序结构、分支结构(或称选择结构)、_循环结构_是结构化程序设计的三种基本流程控制结构。16. 以下方法 m 的功能是求两参数之积的整数部分。 int m ( float x, float y ) _k=(int)x*y_; 17. Java 源程序文件编译后产生的文件称为_字节码_文件,其扩展名为 _.class_ 。 18Java 和 c+都是面向对象的程序设计语言。三、程序分析:(每题4分) 1. 下面是一个排序的程序: import java.io.*; public class Test56_Sort public static void main(String ar
13、gs ) 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; ix.length; i+) for(int j=0; jxj+1) w=xj; xj=xj+1; xj+1=w; /* if(i=1|i=2) ShowArray(x); if(i=2) break; */ publ
14、ic static void ShowArray(int b) for(int i=0; ib.length; i+) System.out.print(bi+i+= +bi); System.out.println( ); 问题: 如果将方法Sort( )中的一对注释符(/* */)去掉,程序输出的结果是什么? 排序前的数据序列:b0=42b1=99b2=5b3=63b4=95b5=36b6=2b7=69b8=200b9=96b0=42b1=5b2=63b3=95b4=36b5=2b6=69b7=99b8=96b9=200b0=5b1=42b2=63b3=36b4=2b5=69b6=95b7
15、=96b8=99b9=200排序后的数据序列:b0=5b1=42b2=63b3=36b4=2b5=69b6=95b7=96b8=99b9=2002. 请写下程序的输出结果: public class Test52 String str1=Hello, Java world! t; String str2=Hello, students! ; public static void main(String args) System.out.print(str1); System.out.println(str2); 输出结果:3. 请写下程序的输出结果:public class T2_4 publ
16、ic static void main(String args) int i,j; char c=*; for(i=0;i5;i+) for(j=0;jy; System.out.println(xy=+flag); flag=zw; System.out.println(zw=+flag); 四、问答题:(每题5分,) 1. Java的接口和C+的虚类的相同和不同处。 由于Java不支持多继承,而有可能某个类或对象要使用分别在几个类或对象里面的方法或属性,现有的单继承机制就不能满足要求。与继承相比,接口有更高的灵活性,因为接口中没有任何实现代码。当一个类实现了接口以后,该类要实现接口里面所有
17、的方法和属性,并且接口里面的属性在默认状态下面都是 public static,所有方法默认情况下是public.一个类可以实现多个接口。 2. 垃圾回收的优点和原理。并考虑2种回收机制。 Java语言中一个显著的特点就是引入了垃圾回收机制,使c+程序员最头疼的内存管理的问题迎刃而解,它使得Java程序员在编写程序的时候不再需要考虑内存管理。由于有个垃圾回收机制,Java中的对象不再有作用域的概念,只有对象的引用才有作用域。垃圾回收可以有效的防止内存泄露,有效的使用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清
18、楚和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。回收机制有分代复制垃圾回收和标记垃圾回收,增量垃圾回收。 3,谈谈final, finally, finalize的区别。 Final修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。 Finally再异常处理时提供
19、finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。 Finalize方法名。Java 技术允许使用 finalize()方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 4,数组有没有length()这个方法? String有
展开阅读全文