《Java程序设计》期末复习.doc
Java程序设计期末复习题型单选题填空题判断题简答题程序题比例30%20%20%20%10%章节比例(%)第一章Java语言基础知识8第二章类与对象的基本概念16第三章类的方法6第四章类的重用14第五章接口与多态12第八章 线程12第九章图形用户界面18第十章 JDBC与数据库访问14第一章Java语言基础知识1. 程序设计语言发展的历程2. 面向对象语言的基本特征3. Java语言的特点4. 为什么Java语言是跨平台的?5. Java2的SDK是什么?6. Java开发工具中的javac.exe和java.exe的功能是什么?7. Java集成开发环境有哪些?8. Java程序编译执行的过程9. Application有哪些特点?如何运行Application程序?10. 编写Application程序,计算并输出sin10x+ctgx在x=3.5的值。11. 编写Application程序,将数组a=20,10,50,40,30,70,60,80,90,100按逆序输出。第二章类与对象的基本概念1. 结构化程序设计的特征2. 面向对象程序设计的特征3. 抽象、封装、继承、多态的概念4. 类和对象的概念5. 如何定义类6. 数据成员的可选修饰符有哪些?实例变量和类变量有何区别?7. 方法成员的可选修饰符有哪些?实例方法和类方法有何区别?8. 构造方法的作用和特点、this关键字的作用。9. 如何创建对象和调用成员10. 如何创建软件包11. Java如何实现内存回收12、定义Student 类 属性id:long 类型 , 表示学号name :String 对象 , 表示一个人的姓名sex:char 类型 , 表示性别 方法public void setId(long id): 设置学号public long getId(): 返回学号public String getName(): 返回姓名public void setName(String name):设置姓名public char getSex(): 返回性别public void setSex(char sex):设置性别13、创建Application程序类TestStudent完成如下测试功能:(1)用以下信息生成一个 Student 对象 aGirl学号:姓名:李丽性别:女(2)调用aGirl的get方法输出aGirl的信息,格式如下:学号: 姓名:李丽 性别:女第三章类的方法1、Java中选择结构和循环结构的实现2、Java的异常的处理机制3、方法的重载4、编写Application程序类ArrayApp,实现如下输出:5、在项目中添加一个shape包的Rectangle类,其中包括:两个私有属性即宽:width和高:height(double型)。一个静态最终公有属性:name,String类型,取值为”矩形类”.在Rectangle类中添加一个无参构造函数和一个带两个参数的构造函数(给两个属性赋初值)。public Rectangle()public Rectangle(double width,double height)在Rectangle类中添加所有属性的get和set方法在Rectangle类中添加两个方法计算矩形的周长和面积。public double perimeter()/计算周长public double area() /计算面积6、在项目中添加Application程序类RectangleTester类,在程序中实现如下功能:(1)利用无参构造函数创建对象r1,用set方法设置r1的宽和高分别为10.2,2.3,然后调用r1的perimeter()输出该矩形的周长。格式如下:第一个矩形周长:25.0(2)利用有参构造函数创建宽为12.3,高为32.1的矩形对象r2, 然后调用r2的area() 输出该矩形的周长。格式如下:第二个矩形面积:394.004 第四章类的重用1、 类的继承、基类和派生类、子类和父类概念2、 属性的隐藏、方法覆盖3、 继承时的构造方法4、 Object类和常用方法5、 终结类、终结属性与终结方法的概念和特点6、 抽象类、抽象方法的概念和特点7、 类的组合、组合与继承的比较8、 语言包(java.lang)的应用: 数据包裹类(Integer类)、字符串类、StringBuffer类9、 实用包(java.util) 的应用:Date 类和Calendar类10、 文本包(java.text)的应用:SimpleDateFormat类11、 创建Student类,属性包括学号,姓名,英语成绩,数学成绩,方法testScore方法(计算测评成绩,测评成绩二门课平均分)12、 创建StudentXW(学习委员)类为Student类的子类,在StudentXW类中重写testScore方法(计算测评成绩,测评成绩二门课平均分3)13、 创建测试类Ex4_1,生成一个Student对象(学生信息:,张三,76,84),一个StudentXW对象(学生信息:,李四,86,84)、分别计算并输出他们的评测评成绩。14、 创建Application程序类ArrayApp,实现如下输出:15、修改上述程序,改用DecimalFormat类控制输出格式(参看第2章课件第120张幻灯片),使输出如下:第五章接口与多态1、 接口的作用2、 接口的定义3、 如何使用接口4、 塑型的概念5、 多态概念和作用6、 构造函数的调用顺序7、创建Shape2D接口。interface Shape2D / 声明Shape2D接口double pi = 3.14; / 数据成员一定要初始化double area(); / 抽象方法,不需要定义处理方式思考:u 为何接口是一个“纯”抽象类?u 接口如何隐藏实现细节?u 为何上述接口中的pi值不能改变?8创建Circle类,实现Shape2D接口class Circle implements Shape2D double radius; public Circle(double r) radius=r; public double area() return (pi * radius * radius); 思考:u Circle类实现了Shape2D接口是如何体现的?9创建Rectangle类,实现Shape2D接口class Rectangle implements Shape2D int width,height; public Rectangle(int w,int h) width=w; height=h; public double area() return (width * height); 思考:u 去除下列代码后,结果会怎样?为什么?public double area() return (width * height); 10创建InterfaceTester 测试类。public class InterfaceTester public static void main(String args) Rectangle rect=new Rectangle(5,6); System.out.println("Area of rect = " + rect.area(); Circle cir=new Circle(2.0); System.out.println("Area of cir = " + cir.area(); 思考:u 如何理解接口能使在看起来不相干的对象之间定义共同行为?第八章 线程1. 线程的概念2. 如何通过Thread类和Runnable接口创建线程 3. 掌握线程同步的方法4. 线程优先级的概念,以及基于优先级的线程调度5、指出Ex8_12程序的运行结果:public class Ex8_12public static void main(String args) throws IOExceptionTestThread t=new TestThread(); t.start();new BufferedReader(new InputStreamReader(System.in).readLine(); /等待键盘输入t.stopme(); /调用stopme方法结束t线程class TestThread extends Threadprivate boolean flag=true;public void stopme() /在此方法中控制循环条件flag=false;public void run()int i=0;while(flag) System.out.println(i+); /如果flag为真则一直显示递增整数5、指出Ex8_3程序的运行结果:public class Ex8_3 public static void main( String args ) System.out.println("main thread starts"); FactorialThread t=new FactorialThread(10); new Thread(t).start(); System.out.println("new thread started,main thread ends " ); / end main / class FactorialThread controls thread executionclass FactorialThread implements Runnable private int num; public FactorialThread( int num ) this.num=num; public void run() int i=num; int result=1; while(i>0) result=result*i; i=i-1; System.out.println("The factorial of "+num+" is "+result); System.out.println("new thread ends"); 思考:上述两个程序实现线程有何不同?第九章图形用户界面1、 Swing与AWT包2、 Swing顶层容器、中间层容器、原子容器的概念Swing提供三个顶层容器的类Ø JFrame 实现单个主窗口Ø JDialog 实现一个二级窗口(对话框)Ø JApplet 在浏览器窗口中实中实现一个applet显示区域3、 布局管理器4、 实现事件处理的方法5、 Applet小应用程序的特点,如何运行?6、 Applet的生命周期及主要方法?每个方法何时执行?7、 创建Lx9_1应用程序,用swing包创建窗体,并在窗体中创建如下用户界面,并实现简单计算器功能。6、创建Lx9_2的Applet程序,在Applet上显示如下进度表。第十章 JDBC与数据库访问1、 什么是JDBC?2、 JDBC数据库驱动程序有哪几类?3、 用JDBC编写数据库程序的主要步骤包括哪些?4、 JDBC编写数据库程序主要需加载什么包?5、 执行Select、Insert、Update和Delete数据库操作语句的方法有何不同? 6、 在Access中创建一个名为“jxwd”的数据库,在库中添加一张名为“kc”的表,存储如下数据:7、选取jxwd.mdb创建一个名为“jxwd”的ODBC数据源。8创建Lx10_1.java应用程序,显示kc表中的所有记录数据。