Java程序设计习题集无答案_第1页
Java程序设计习题集无答案_第2页
Java程序设计习题集无答案_第3页
Java程序设计习题集无答案_第4页
Java程序设计习题集无答案_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java 面向对象程序设计习题集面向对象程序设计习题集 (Java object-oriented Program Design Exercise Collection) 作者:黄俊莲 冯花平 前言前言 感谢所有的学生们,和你们一起度过的这个学期使我非常开心。 文中的错误以及疏漏之处,望大家多多指正。 附联系方法: Email: huangjunlian 目录目录 前言前言.2 目录目录.3 1 JAVA 语言入门语言入门.1 一、选择题.1 二、填空题.2 三、编程题.3 四、上机作业题:.4 2 第二章与第三章第二章与第三章 JAVA 基础基础.5 一、选择题.5 二、填空题.12 三、编

2、程题.13 四、课后练习题:.15 五、第一次上机作业题:.16 3 第四、五章第四、五章 面向对象面向对象.17 一、选择题.17 二、填空题.31 三、编程题.34 修订记录修订记录.48 1 JAVA 语言入门语言入门 一、选择题 1.用 Java 虚拟机执行类名为 Hello 的应用程序的正确命令是 。 A. java Hello.class B. Hello.class C. java Hello.java D. java Hello 2.保存包含 Java 语言源代码的文本文件使用的扩展名是 。 A. .java B. .class C. .txt D. .src 3.编译 Jav

3、a 源文件和解释执行 Java 字节码程序分别是 。 A. java.exe 和 jdb.exe B. javac.exe 和 javadoc.exe C. .javac.exe 和 java.exe D. jad.exe和 java.exe 4.只包含一个带 public 修饰的 Java 类 Abc 的 Java 源程序的正确命名是 。 A. Abc B. Abc.java C. abc.java D.一个任意的标识符后带后缀.java 5.必须把 Java 语言编写的程序编译成 。 A.字节码 B.源代码 C. Javadoc 语句 D.对象代码 6.所有 Java 语言语句必须以 结尾

4、。 A.句号 B.逗号 C.分号 D. 7.在 Java 程序中,必须使用 分隔类,对象和方法。 A.逗号 B.分号 C.句号 D.正斜杠 8.所有的 Java 应用程序必须有一个名为 的方法。 A. method B. main C. java D. Hello 9.编写并保存了一个 Java 程序文件之后, 它。 A.解释并编译 B.解释后执行 C.编译后并重新保存 D.编译后并解释 10. 下列哪个是 JDK 提供的编译器? A. java.exe B. javac.exe C. javap.exe D. javaw.exe 11. 编译一个 Java 程序 Hello.java 的正确

5、命令格式 。 A. java hello.java B. javac Hello.java C. javac Hello D. Java Hello 12. 一个包含 Java 类 A,B,C 的源程序 A.java,编译产生的文件是 。 A. A.class B. A.class B.class C.class C. A.class B.class D. B.class C.class 13. 设 Hello.html 文件嵌入一个 Applet 类 Hello,运行或查看这个 Applet 的命令是 A. appletviewer Hello.html B.点击 Hello.class C

6、. appletviewer Hello.class D.点击 Hello.java 14. 下面 是 Java 的保留字。 A. run B. import C. implement D. string 15. 在 JAVA 编程中,以下 命令用来执行 java 类文件。 Ajavac B java C appletviewer D以上所有选项都不正确 16.在Java中,由 Java 编译器自动导入,而无需在程序中用 import 导入的包是 。 Ajava.applet B java.awt C java.util Djava.lang 17.在 Java 中,所有类的根类是 。 Aja

7、va.lang.Object B java.lang.Class C java.applet.Applet Djava.awt.Frame 18. 能够支持 javadoc 命令的注释语句是 。 A/*./ B /*.*/ C / D/*.*/ 19. 十进制数 16 的 16 进制表示格式是 。 A0 x10 B 0 x16 C 0 xA D16 20. 下列关于 Java Application 与 Applet 的说法中,正确的是 。 A都包含 main()方法 B 都通过“appletviewer”命令执行 C 都通过“javac”命令编译 D都嵌入在 HTML 文件中执行 21. J

8、DK 中提供的文档生成器是 Ajava.exe B javap.exe C javadoc.exe Djavaprof.exe 22. 下列描述中,错误的是 AJava 要求编程者管理内存 B Java 的安全性体现在多个层次上 C Applet 要求在支持 Java 的浏览器上运行 DJava 有多线程机制 二、填空题二、填空题 1.JAVA 语言的最大贡献者是: 。 答案:答案: 2.JAVA 程序的基本单位是 。 答案:答案: 3.Java 的主要平台有 3 种: 、 、 。 答案:答案: 4.J2SE 可以分为 4 个主要部分: 、 、 、 。 答案:答案: 5.Java 程序分为两大

9、类型: 、 。 答案:答案: 6.Java Applet 程序的主类必须是 的子类? 答案:答案: 7.若使用命令行:java Add 88 66 33 运行带有 main 方法的 Java 程序 Add,则开 始运行时,args1中存放的内容为 ,arg2 中存放的内容为 。 答案:答案: 8.main 方法的声明修饰包括 。 答案:答案: 9.JVM 是 的缩写。 答案:答案: 10. 缩写 API 代表 。 答案:答案: 11. 缩写 JIT 代表 。 答案:答案: 12. 缩写 JDK 代表 。 答案:答案: 13. Java 源文件中最多只能有一个 类,其它类的个数不限。 答案:答案

10、: 14. Applet 是能够嵌入到 格式的文件中,并能够在浏览器中运行的 Java。 答案:答案: 三、三、编程题 1.编写一个输出”Hello World”的程序,用两种方式实现(Application、Applet) 参考代码:参考代码: 1)Application 方式: public class TT public static void main(String args) System.out.println(Hello World); 2)Applet 方式: 首先编写 TT.java,相关代码如下: import java.applet.*; import java.awt.

11、*; public class TT extends Applet public void paint(Graphics g) g.setColor(Color.red); g.drawString(Hello World,2,30); 编写 HelloWorld.html,相关代码如下: 2.编写一个 Java 应用程序,定义一个整数 125,把它的八进制、十进制、十六进 制形式输出 参考代码:参考代码: public class Test public static void main(String args) int a = 125; System.out.printf(十进制形式:%d

12、,八进制形式:%o,十六进制形式: %x,a,a,a); 参考代码二:参考代码二: import java.util.Scanner; import java.util.*; public class Test public static void main(String args) /定义一个整数 125,把它的二进制、十进制、十六进制形式输出 int m = 125,n = 0,t; t = m; while(t!=0) t = t / 2; n+; /n 为 m 转换为二进制数的位数 t = m; int i = n - 1; int a2 = new intn; while(t!=0)

13、 a2i- = t % 2; t = t / 2; System.out.print(m+转换为二进制为:); for(i=0;in;i+) System.out.print(a2i); /转换为八进制 t = m; n = 0; while(t!=0) t = t / 8; n+; int a8 = new intn; t = m; i = n - 1; while(t!=0) a8i- = t % 8; t = t / 8; System.out.print(n+m+转换为八进制为:); for(i=0;in;i+) System.out.print(a8i); /转换为十六进制 t =

14、m; n = 0; while(t!=0) t = t / 16; n +; i = n - 1; t = m; i = n - 1; char a16 = new charn; while(t!=0) int k = t % 16; switch(k) case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9: a16i- = (char)(k+48);break; case 10:a16i- = A;break; case 11:a16i- = B;break; case 12:a16i-

15、= C;break; case 13:a16i- = D;break; case 14:a16i- = E;break; case 15:a16i- = F;break; t = t / 16; System.out.print(n+m+转换为十六进制为:); for(i=0;iy?y:x B. xy?(x+y): (x-y) D. x=y?y:x 答案:答案: 36. 以下定义一维数组的语句中,正确的是 。 A. int a5; B. int a =new 5; C. int a; D. int a = 1,2,3,4,5; 答案:答案: 37. 以下程序执行后,k 的值是 。 int x=

16、2,y=9,k=0; switch(x%y) case 0:k=x+y;break; case 1:k=x-y;break; case 2:k=x*y;break; default:k=x/y;break; System.out.println(k); A. 11 B. -7 C. 18 D. 0 答案:答案: 38. 应用程序的 main 方法中有以下语句,则输出结果是 。 int x = 1,2,3,4,-5; int max = x0; for(int i=1;imax) max = xi; System.out.println(max); A. 1 B. 2 C. -5 D. 4 答案

17、:答案: 39. 应用程序的 main 方法中有以下语句,则输出结果是 。 int a =1,2,3,2,3,4,2,1; int sum = 0; for(int i=0;i 0 ) j = i * 2; System.out.println ( The value of j is + j ); k = k + 1; Aline 4 B line 6 C line 7 Dline 8 答案:答案: 57. 下列属于合法的 Java 标识符是 ? AABC B 在下列给出的数组元素中,非法的是 ? Aa0 B a1 C a99 Da100 答案:答案: 二、填空题 1.已知 x=8,表达式 x

18、2)的值为 ,x 的值为 。 答案:答案: 2.已知 x=8,表达式 x5|(x=10)2)表达式的值为 ,x 的值为 。 答案:答案: 3.已知 x=1,表达式(y=1)=0) 则执行下 列几个语句后的输出结果是 。 for (int i = 0 ;i a.length ; i +) if( ai % 3=0 ) System.out.println(ai + t); 答案:答案: 35. 下面程序的运行结果是 。 public class TT public static void main(String args) int i ; int a = 11,22,33,44,55,66,77

19、,88,99 ; for(i = 0 ; i = a.length / 2 ; i + ) System.out.print( ai+aa.length-i-1+ ); 答案:答案: 三、编程题 1.编写一个程序,计算出正方形的面积和周长。 参考代码:参考代码: 2.编写一程序,输入 3 个数,按由大到小的顺序输出。 参考代码:参考代码: 3.将具有 n 个元素的数组由小到大的顺序进行排序,并输出。 参考代码:参考代码: 4.输出大写、小写英文字母表。 参考代码:参考代码: 5.编写一程序,根据输入的月份判断并输出它属于哪个季节,要求采用两种方法:if 语句和 switch 语句。 1)12、

20、1、2 月为冬季 2)3、4、5 月为春季 3)6、7、8 月为夏季 4)9、10、11 月为秋季 6.编程实现下面的输出: * * * * * 参考代码:参考代码: 7.编程实现下面的输出: * * * * * 8.写一程序,给定 x 值,输出 y 的值: x x0) System.out.println(first); else if (x-4) System.out.println(second); else System.out.println(third); x 的取值在什么范围内时,将打印出字符串second? Ax 0 B x -4 C x 10); public static

21、void main(String args) int i=10; Test t= new Test(); t.printValue(i); A8 B 9 C 10 D11 答案:答案: 48.下列关于变量的叙述哪个是错的? A实例变量是类的成员变量 B 实例变量用关键字 static 声明 C 在方法中定义的局部变量在该方法被执行时创建 D局部变量在使用前必须被初始化 答案:答案: 49.给出下列的程序,其叙述正确的是 public class Test static int arr = new int10; public static void main(String a) System.o

22、ut.println(arr1); A编译时将发生错误 B 编译时正确但是运行时出错 C 输出为 0 D输出为 null 答案:答案: 50.执行完语句 int x = new int25; 后,则下列哪项说法是正确的? 。 Ax24值为 0 B x24值未定义 C x25值为 0 Dx0值为空 答案:答案: 51.名叫 max 需要两个整型参数的方法应声明为 。 Apublic void max() B public void max(int a,b) C public void max(int a,int b) Dpublic void max(a,b) 答案:答案: 52.方法声明为 p

23、ublic void showResults(double d,int a),则下列哪一个方法调用是正确 的? AshowResults(double d,int ;) B showResults(12.2,67); C showResults(4,99.7) D这些答案都是正确的 答案:答案: 53.声明为 public char procedure(double d)的方法的类型是 。 A公共的 B 字符型 C 过程 D双精度型 答案:答案: 54.public boolean testValue(int response)方法返回的是 。 A一个布尔值 B 一个整型值 C 没有值 D不能

24、确定返回什么 答案:答案: 55.声明为 public int getVal(double sum)的方法,下列哪一个是最后一行合法的代码 。 Areturn; B return 77; C return 2.3; D上述任何一个都可以 答案:答案: 56.分析以下程序: public class T public int aMethod() static int i=0; i+; return i; public static void main(String args) T t = new T(); t.aMethod(); int j = t.aMethod(); System.out.

25、println(j); A编译将失败 B 编译成功,执行后输出0 C 编译成功,执行后输出1 D编译成功,执行后输出2 答案:答案: 57.分析以下程序: public class T private static int j = 0; public static boolean methodB(int k) j += k; return true; public static void methodA(int i) boolean b; b = i10 b = i10 public static void main(String args) methodA(0); System.out.pr

26、int(j); 该程序执行后,输出的是 。 A0 B 1 C 2 D3 答案:答案: 注意逻辑与是短路运算符注意逻辑与是短路运算符 58.分析以下程序: public class T public static void main(String args) String s = new String(Hello); modify(s); System.out.println(s); public static void modify(String s) s += world!; A执行后输出”Hello” B 编译失败 C 编译成功,执行后输出”Hello World!” D编译成功,执行后引

27、起异常 答案:答案: 59.如果想限制当前类之外对某个成员的访问,应选择如下哪一种修饰符? 。 Apublic B private C protected D不需要任何修饰符 答案:答案: 60.分析如下程序: public class T public static void main(String args) String o1 = new String(ABV); String o2 = new String(ABV); if(o1.equals(o2) System.out.println(Equal); 以上程序的结果是: 。 A程序执行后无输出 B 程序执行后输出 Equal C

28、程序在第 5 行出现编译错误 D程序执行后出现异常 答案:答案: 61.如果要求子类可以在任何包中访问父类中的成员,下面哪一个修饰符是可达到这个 目标的最为严格的修饰符 。 Apublic B private C protected D没有任何修饰符 答案:答案: 62.分析以下程序段: abstract class AbstractIt abstract float getFloat();/第行 public class AbstractTest extends AbstractIt private float f1 = 1.0f; private float getFloat() retu

29、rn f1;/第行 A可编译成功 B 在第行运行失败 C 在第行编译失败 D在第行编译失败 答案:不能降低继承的抽象方法的访问权限。答案:不能降低继承的抽象方法的访问权限。 63.分析以下程序段: Integer i = new Integer(42); Long l = new Long(42); Double d = new Double(42.0); 以下哪个表达式的值为真? A(i=1) B (i=d) C (d=l) D(i.equals(42) 答案:答案: 64.分析下面两个 Java 程序: /ClassOne.java package com.ab.pkg1; public

30、class ClassOne private char var = a; char getVar() return var; /ClassTest.java package com.ab.pkg2; import com.ab.pkg1.ClassOne; public class ClassTest extends ClassOne /第 3 行 public static void main(String args) char a = new ClassOne().getVar();/第 5 行 char b = new ClassTest().getVar();/第 6 行 ClassT

31、est.java 程序执行的结果是 。 A程序编译时在 ClassTest.java 和 3 行出现错误 B 程序编译成功,程序执行后无异常抛出 C 程序编译时在 ClassTest.java 第 5 行出现错误 D程序编译成功,程序执行时在 ClassTest.java 第行出现异常。 答案:答案: 65.下面对 methoda()方法的哪一种声明是被包中的类可访问的,并且访问时不需要建 立 methoda()方法所在类的实例 AAbstract public void methoda(); B public abstract double methoda(); C public stati

32、c double methoda() Dprotected void methoda(double d1) 答案:答案: 66.在一个相同的包中,想让一个类能够引用另一个类的成员,达到这个目的最小的访 问控制权限的修饰符是 。 Apublic B private C protected D不需要任何修饰符 答案:答案: 67.试分析下列代码: public class AClass AClass() System.out.print(AClass); public class BClass extends AClass BClass() System.out.print(BClass); pu

33、blic static void main(String args) AClass a = new AClass(); AClass a1 = new BClass(); 其执行结果为 A编译失败 B 编译成功且输出”AClass BClass” C 编译成功且输出”AClass AClass BClass” D编译成功且输出”AClass BClass BClass” 答案:答案: 68.分析下列程序: public class AClass public int i = 0; public AClass(String text) i = 1; public class BClass ext

34、ends AClass public BClass(String text) i = 2; public static void main(String args) BClass b = new BClass(Hello); System.out.println(b.i); 该程序的结果是 。 A编译失败 B 编译成功且输出 C 编译成功且输出 D编译成功且输出 答案:超类中缺少无参的构造方法,所以编译错误。答案:超类中缺少无参的构造方法,所以编译错误。 69.给定如下 JAVA 程序片断: class A public A() System.out.print(A); class B ext

35、ends A public B() System.out.print(B); public static void main(String args) B b = new B(); 上述程序将 。 A不能通过编译 B 通过编译,输出为: AB C 通过编译,输出为: B D通过编译,输出为: A 答案:答案: 70.在 Java 中,下面关于构造函数的描述正确的是 。 A类必须有显式构造函数 B 它的返回类型是 void C 它和类有相同的名称,但它不能带任何参数 D以上皆非 答案:答案: 71.在类的说明符中,被指定为私有的数据可以被以下 。 A程序中的任何函数 B 其他类的成员函数 C 类

36、中的成员函数 D派生类中的成员函数 答案:答案: 72.如下 Java 代码段,体现了 概念。 . public void aMethod(String s). public void aMethod(int i). public void aMethod(int i,float f). . A多继承 B 重载 C重写 D多态 答案:答案:B 73.在 jave 中,类 Worker 是类 Person 的子类,Worker 的构造方法中有一句 super(), 该 语句 。 A调用类 Worker 中定义的 super()方法 B 调用类 Person 中定义的 super()方法 C 调用类 Person 的构造函数 D句法错误 答案:答案: 74.下列构造方法的调用方式中,正确的是 。 A按照一般方法调用 B 由用户直接调用 C 只能通过 new 自动调用 D被系统调用 答案:答案: 75.在 Java 中,能实现多重继承效果的方式是 。 A内部类 B 适配器 C接口 D同步 答案:答案: 76.int 型 public 成员变量 MAX_LENGTH,该值保持为常数 100,则定义这个变量的语 句是 。 Apublic int MAX_LENGTH=100 B final int MAX_LENGTH=100 C public const int MAX_LENGT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论