|
东华大学继续教育学院
2021春季学期 远程学历教育《Java程序设计》 考试试卷
踏实学习、弘扬正气、诚信做人、诚实考试、作弊可耻、后果自负
A卷 √ B卷 C卷 D卷 开卷 √ 闭卷
班级 姓名 学号 成绩
资料一律做在答题纸上,做在试卷上无效。
项目 一 二 三 四 五 六 总分
成绩
一、 是非题(本大题共10小题,更多资料下载:谋学网(www.mouxue.com) 1分, 共10分)
(1) Java是完全面向对象的程序设计语言。 ( )
(2) 面向对象的程序设计语言通过类来实现封装。 ( )
(3) Java源程序经编译器javac编译后生成二进制字节码,然后在JVM上执行。 ( )
(4) 派生类享有父类的所有属性和方法。 ( )
(5) 在派生类中可以直接访问父类的protected成员 。 ( )
(6) 不能用new操作创建抽象类的对象。 ( )
(7) Java程序中的垃圾回收通常由Java系统自动完成。 ( )
(8) 一个线程是一个程序的完整执行。 ( )
(9) 在Java中,关键字this是JVM为对象创建的指针,引用对象自身。
( )
(10) Java类可以从多个类派生。 ( )
二、 填空题(每空1分,共30分)
1. 面向对象程序设计的三大特性是_________、_________、_________。
2. 类中的成员包括___________、___________两大类。
3. 类的非静态成员的只能通过类的_______来访问,而不能直接通过__________来访问。
4. Java 程序中类成员的访问控制修饰符有______、______与________,缺省访问权限(无修饰符)的类和成员可在________内访问。
5. 在Java语言中,图形用户界面GUI组件可分为_______组件和________组件。
6. Java语言系统内置的3个流对象分别是___________、____________、____________。
7. Java程序中的所有线程类都必须实现接口_______¬¬¬¬¬¬¬____¬¬¬¬¬¬¬_,其中的方法__________¬¬¬¬¬¬¬__决定了线程的执行行为。
8. Java程序中初始化数组有_________、__________两种方法。
9. Java程序总是由_______、________执行的。
10. 程序填空题
(1) 欲将类A的 目标文件放在包pkg中,在下列程序中的下划线上填上适当的关键字。
_____ pkg;
class A {
……
}
(2) 补充以下Circle类的构造方法和get方法。
public class Circle {
int r;
public Circle(int r) {
______=______;
}
public int getR( ) { ____________ ; }
}
(3) 以下正方形类Square是从矩形类Rectangle派生定义的,请补充划线部分。
public class Square ______ Rectangle {
public ______ IsSqaue() { return w= =h?ture:false; }
}
(4)
public class Demo {
public static void main(String[] args) {
String s="1000";
int i=Integer. _________ (s);
long l=new Long(s). _________ ( );
}
}
三、更多资料下载:谋学网(www.mouxue.com)与程序分析(本大题共5小题,更多资料下载:谋学网(www.mouxue.com) 5分, 共25分)
1. 请列出Java语言的10大特点。
2. 什么是抽象类?抽象类与接口的差别是什么?
3. 什么是构造函数?其作用是什么?
4. 写出下列程序的执行结果:
public class RQ {
public static void main(String[] args) {
for(int i=1;i<=100;i++)
{
for(int j=1; j<=i; j++)
if(i= = j*j) System.out.print(j+" ");
}
System.out.println();
}
}
5. 分析以下程序在执行过程中分别输入数字3和字符A的执行结果。
public class Demo2 {
public static void main(String[] args) {
int i=0;
String[] choise={"A","B","C"};
Scanner cin =new Scanner(System.in);
try {
System.out.println("----Flag 1 ----");
System.out.println("请输入你的选项(1,2,3)");
i=cin.nextInt();
System.out.println(choise[i-1]);
System.out.println("----Flag 2 ----");
}
catch(InputMismatchException e) {
System.out.println("----Flag 3 ----");
System.out.println("输入数据格式错,要求是整型!");
System.out.println("----Flag 4 ----");
}
catch(ArrayIndexOutOfBoundsException e) {
System.out.println("----Flag 3 ----");
System.out.println("数组越界!");
System.out.println("----Flag 4 ----");
}
finally {
System.out.println("----Flag 5 ----");
System.out.println("执行完毕!");
}
System.out.println("----Flag 6 ----");
}
}
四、编程题
1. 编写一个Java程序,能从键盘上接收两个整数,然后计算两个数的乘积 (5分)。
2. 编写求一个整数数组A[10,15,12,9,7]中最小元素min和元素之和sum的程序.(5分)。
3. 首先定义一个雇员类EMP,类的属性包括雇员编号ID,雇员名Name,年龄Age,性别Sex和专业Major,成员方法包括构造方法、属性的get方法和set方法,打印雇员信息的方法PrintEMP,然后在主类的main()函数中为5号计算机网络专业的23岁男性雇员王强定义一个相应的对象emp,并调用对象的PrintEMP ()方法在屏幕上显示其信息(7分)。
4. 定义两个线程类ThreadA和ThreadB,其行为是分别显示“I am Thread A”和“I am Thread B”, 然后在main()函数中创建两个线程的对象,并分别启动两个线程(8分)。
5. 设计一个简单的计算器(10分)。
题目要求:
1) 设计一个框架窗口,窗口布局为Flowlayout;设计三个文本框、四个按钮。
2) 计算器可以完成两个数字的加减乘除运算。三个文本框中两个负责接收要计算的数字,剩下的一个显示结果。四个按钮分别显示“+”、“-”、“*”、“、”。
3) 设计的四个按钮用来完成事件处理,即具体的运算工作。当单击其中一个按钮后,结果文本框中显示出相应的计算结果。
|
|