1、装订线 华南农业大学期末考试试卷(A卷) 2011-2012学年第 1 学期 考试科目: Java程序设计 考试类型:(闭卷)考试 考试时间: 120 分钟 学号 姓名 年级专业 题号 一 二 三 总分 得分 评阅人 考试说明:所有答案必须填写在答卷上,考试结束时答卷和试卷都上交。 得分 一、单项选择题(本大题共 25 小题,每小题 2 分,共 50 分) 1. 下列有关J
2、ava程序的说法中正确的是________: A. 由于Java程序是解释执行的,所以执行前不需要进行编译 B. 一个.java源程序编译后将产生一个.class的字节码文件 C. 安装了JDK后,安装程序会自动配置系统的环境变量path和classpath D. 面向对象的解释型高级编程语言 2. 下列为合法变量名的是________。 A. false B. 0xabc C. iStudent D. cow’s 3. 对于构造方法,下列叙述不正确的是________。 A. 构造方法是类的一种特殊方法,它的方法名必须与类名相同 B. 构造方法没有返回值类
3、型 C. 子类不但可以继承父类的无参构造方法,也可以继承父类的有参构造方法。 D. 子类在创建构造方法是必须把调用父类构造方法放在第一条语句 4. 下列关于接口的说明正确的是________。 A. 接口和抽象类是同一回事 B. 一个类不可以实现多个接口 C. 接口间不能有继承关系 D. 实现一个接口必须实现接口的所有方法 5. Java为移动设备提供的平台是________。 A.J2ME B.J2SE C.J2EE D.JDK5.0 6. 下列语句中,属于多分支语句的是________。 A.
4、if语句 B.switch语句 C.do while语句 D.for语句 7. 在Java中,存放字符串常量的对象属于________类对象。 A. Character B. String C. StringBuffer D. Char 8. 下列关于继承的哪项叙述是正确________。 A. 在java中允许多继承 B. 在java中一个类只能实现一个接口 C. 在java中一个类不能同时继承一个类和实现一个接口 D. java的单一继承使代码更可靠 9. 给出如下代码: class Test{ priv
5、ate int m; public static void fun() { // some code... } } 如何使成员变量m 被函数fun()直接访问? A. 将private int m 改为protected int m B. 将private int m 改为 public int m C. 将private int m 改为 static int m D. 将private int m 改为 int m 10. System和Math类在哪个包中________。 A. java.io B. java.lang
6、 C. java.awt D. java.util 11. 能从循环语句的循环体中跳出的语句是________。 A. for 语句 B. break 语句 C. while 语句 D. continue语句 12. 若类中某方法进行重载,能够区分这重载方法的手段是 ________。 A. 它们的返回值类型的不同 B. 它们的名称的不同 C. 它们的参数表的不同 D. 它们的修饰符不同 13. 下列关于f
7、or循环和while循环的说法中哪个是正确的________。 A.while循环能实现的操作,for循环也都能实现 B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果 C.两种循环任何时候都可替换 D.两种循环结构中都必须有循环体,循环体不能为空 14. 下列关于main()方法说法正确的是________。 A. public修饰类中可以没有main()方法; B. main()方法中主要完成所有对象的创建; C. public修饰的类有多个时,main()方法就有多个; D. main()方法头的定义可以根据情况随意修改
8、 15. 以下数据类型定义正确的是________。 A.boolean b = 0; B. char s = ‘\t’; C.byte b = -268; D. float f = 2.5e3. 16. 在一个应用程序中有如下定义:int a[]={1,2,3,4,5,6,7,8,9,10}; 为了打印输出数组a的最后一个元素,下面正确的代码是________。 A. System.out.println(a[10]); B. System.out.println(a[9]); C. System.out.print
9、ln(a[a.length]); D. System.out.println(a(9)); 17. 定义二维数组a,不正确的是________。 A. int[][] a; B. int a[][]; C. int[] a[]; D. int[3][3] a; 18. 下列关于抽象类的说法哪个正确________。 A. 绝对不能用抽象类去创建对象; B. 某个抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法; C. 抽象类中不可以有常量; D. 可以用private修饰抽象类。 19. 下列关于方法覆盖不正确的是________
10、 A. 方法覆盖和方法重载都是定义相同方法名的方法,本质上是一致的; B. 方法覆盖只能发生在子类对父类的继承中; C. 方法覆盖充分体现了Java语言的多态性; D. 方法返回值类型不同时也能实现方法覆盖。 20. 关于Java的包叙述不正确的是________。 A. 不同包中的类不允许有相同的名称 B. 同一包中的类不允许有相同的名称 C. 包是用于组织类与接口的机制 D. 可以通过import语句将包中的类加载到程序中 21. Java中所有类的父类是________。 A. Father; B.Object; C. Lang;
11、 D. ClassFather; 22. 下列程序段的输出结果是________。 int data = 0; char k = ‘a’, p = ‘f’; data = p – k; System.out.println(data); A. 0; B. a; C. f; D. 5; 23. 在使用interface声明一个接口时,只可以使用________修饰符修饰该接口。 A. private B. protected C. private protected D. public 24. 下
12、列哪个类声明是正确的________。 A. abstract final class HI{...} B. abstract private move(){...} C. protected private number{...} D. public abstract class Car{...} 25. 下列叙述中,正确的是________。 A. Java语言的标识符是区分大小写的 B. 源文件名与public类名可以不相同 C. 源文件名其扩展名为.jar D. 源文件
13、中public类的数目不限 得分 1.5CM 二、程序阅读题(本大题共4小题,每小题5分,共20分) 说明:阅读下面的程序,并写出程序的运行结果。 1. public class StringTest{ public static void main(String [] args){ String s = new String ("Hello"); modify(s); System.out.println(s); } public static void modify (String s){
14、 s += "world!"; } } 2. import java.io.* ; public class ABC { public static void main(String args[ ]) { int i ; int a[] = { 11,22,33,44,55,66,77,88,99 }; for ( i = 0 ; i <= a.length / 2 ; i ++ ) System.out.print( a[i] +a[a.length-i-1]+" ");
15、 System.out.println(); } } 3. class Person{ public Person() { System.out.println(“Person()”); } } class Employee extends Person{ public Employee(){ this(“call Employee(String)”); System.out.println(“Employee()”); } public Employee(S
16、tring s) { System.out.println(s); } } public class Faculty extends Employee{ public Faculty(){ System.out.println("Faculty()"); } public static void main(String[] args) { Faculty fa = new Faculty(); } } 4. class ICCard extends Card{ public void s
17、how(){ System.out.println(“this is ICCard!”); public void show(s){ super.show(); this.show(); System.out.println(s); } } class Card { public void show(){ System.out.println(“this is Card!”); } } class Test { public static void main(String[] args) { ICCard
18、 ic = new ICCard(); ic.show(“Test ICCard!”); } } 得分 1.5CM 三、编写程序题(本大题共3小题,每小题10分,共30分) 1. 编写程序输入两个整数,并输出这两个数的所有公约数。(10分) 2. 编写程序读入10个单精度浮点型值,按照从小到大的顺序输出来。(10分) 3. 考虑二维坐标系的点,定义一个描述点的类,命名为Point。(10分) 具体要求如下: (1)每个点由双精度类型的横坐标x和纵坐标y描述;要求对该类的数据域进行合理的封装。 (2)默认构造一个Point对象时,横、纵坐标均为0;也可以在构造一个Point对象时通过参数指定横、纵坐标。 (3)定义一个求两点间距离的方法,方法头为: public double distance(Point otherPoint) (4)设定对象的输出形式为:(x, y)。 5
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818