广州大学华软软件学院实验大纲计算机系实验大纲2015~2016学年第二学期课程名称:Java程序设计课程代码:SP3002计划学时:68学分:4课程性质:必修、考试面向专业:2014级计算机系相关专业课程负责人:蔡木生任课教师:董少英、王建红广州大学华软软件学院SouthChinaInstituteofSoftwareEngineering,GuangZhouUniversity实验大纲Java程序设计第1页一、实验课的性质、目的和任务:性质:实验课是小课,是大课的补充和深化、细化,是课程的实践环节目的:通过上机实验,加深对Java面向对象程序设计的基本概念和基础知识的理解、掌握。通过小课教师引导和学生动手实验,达到巩固理论知识和锻炼动手能力的目的。任务:通过实践课,培养学生用面向对象方法来分析、解决实际问题的能力,为后续课程的学习打下良好的基础。二、实验课的理论基础Java面向对象程序设计的基本概念和基础知识:Java语言的特点、application程序与applet程序的比较、面向对象编程基础(类、对象、继承、多态、接口、包)、内部类、异常处理、界面设计、事件处理、输入输出流、JDBC、多线程、网络编程等内容。三、实验条件的基本要求安装有WINDOWSXP/2003/2008操作系统和Eclipse开发环境的软件实验室,具体要求如下:1)计算机:56台,装有WindowsXP/2003/2008操作系统、office办公软件等2)Java程序集成开发环境:Eclipse3.x等。四、对学生的能力要求要求:(1)熟悉JDK、API文档及Eclipse的下载和安装,懂得Java编程环境的建立和常用开发工具的使用;能够区分两类应用程序,掌握它们的编辑、编译、运行方法;(2)理解Java的数据类型,能够正确地定义、使用常量和变量;熟悉Java的运算符、表达式、语句方法;掌握条件语句、循环语句的使用;(3)掌握类定义和对象创建的方法,熟悉字段、方法、重载等相关内容;(4)掌握静态成员与静态方法的定义和使用方法能为以及包导入方法;(5)掌握类和对象中方法参数传递的几种方式,并了解它们之间的差异,了解递归调用的方法;(6)熟悉一维数组、二维数组的声明、初始化、使用方法;(7)熟悉字符串:String类、StringBuffer类的使用;(8)熟悉类的继承和类的组合机制;(9)理解多态、抽象类的概念,熟悉接口的定义与实现方法;实验大纲Java程序设计第2页(10)理解反射、内部类的概念及应用法;(11)熟悉Java的异常处理机制;(12)掌握文件、输入输出流使用方法;(13)熟悉多线程的概念、应用;(14)熟悉网络编程的基本方法;(15)掌握JDBC技术。五、实验安排与内容提要序号实验内容实验要求内容提要实验学时1Java入门Java编程环境的建立及开发工具的安装和使用实验熟悉JDK、API文档的下载和安装,懂得Java编程环境的建立和常用开发工具的使用;能够区分两类应用程序,掌握它们的编辑、编译、运行方法22Java编程基础Java的数据类型和变量、常量、关键字和标识符、运算符和表达式及流程控制语句理解Java基本语法:Java的数据类型和变量、常量、关键字和标识符、运算符和表达式及流程控制语句23类与对象熟悉Java的类基础知识、类对象、类方法的定义,构造函数、包的使用熟悉Eclipse软件的使用,熟悉掌握类、对象、方法的声明与定义,熟悉构造函数、包等知识2实验大纲Java程序设计第3页4常用类熟悉String类、StringBuffer类、StringTokenizer类、Math类、包装类的使用熟悉String类、StringBuffer类、StringTokenizer类、Math类、包装类、日期日历类的使用,能够构建一般的数学表达式25日期日历类等常用类、继承和多态性熟悉日期日历类的用法,理解继承的概念;掌握子类的创建方法;掌握super关键字的用法;理解继承的层次结构和多态性熟悉日期日历类的用法,理解继承的概念;掌握子类的创建方法;理解各种访问修饰符的作用;熟悉成员变量的隐藏和方法重写;掌握super关键字的用法;理解继承的层次结构和多态性、上转型对象的创建和使用26抽象类、接口与数组理解抽象类、接口以及数组的定义、初始化和使用理解抽象类、接口以及数组的定义、初始化和使用27泛型与集合理解泛型的概念,掌握集合接口(Set、List、Map)及其类的基本用法;掌握集合元素的遍历方法理解泛型的概念及泛型的简单使用,掌握集合接口(Set、List、Map)及其实现类的基本用法;掌握集合元素的遍历方法;熟悉Java中的装箱、拆箱操作2实验大纲Java程序设计第4页8异常处理、log4j、反射和内部类理解异常与异常类型,熟悉异常处理、重新抛出异常、finally子句、自定义异常的方法和反射的概念;熟悉反射类的基本应用;熟悉Java内部类的定义和使用,熟悉log4j的基本用法理解异常与异常类型、异常处理、重新抛出异常、finally子句、自定义异常等知识和反射的概念;熟悉反射类的基本应用;熟悉Java内部类的定义和使用,熟悉log4j的基本用法29文件与输入输出流(1)熟悉File类、InputStream和OutputStream的子类、FileInputStream、FileOutputStream的使用;理解“逐层包装”思想,熟悉“缓冲字节流”作用;熟知System.in、System.out用法能够使用File类表示文件或目录和利用InputStream、OutputStream的子类进行字节读、写操作;能够用FileInputStream和FileOutputStream进行文件读写的操作;理解“逐层包装”思想,熟悉“缓冲字节流”作用;熟知System.in、System.out用法2实验大纲Java程序设计第5页10文件与输入输出流(2)熟悉字符流的使用,能够使用包装类提高读写效率;熟悉对象序列化/反序列化的基本用法及RandomAccessFile类的使用熟悉字符流、FileReader、FileWriter的使用和字节流与字符流的转换,能够使用包装类提高读写效率;熟悉PrintWriter类的功能、基本用法;理解对象序列化/反序列化的含义、操作;熟悉RandomAccessFile类的用法211图形用户界面(GUI)(1)理解容器、组件的概念;熟悉常用容器、常用组件、常用布局管理器的使用理解容器、组件的概念;熟悉常用容器(Frame、Panel)、常用组件(Label、Button、TextField、TextArea、List、Choice、Checkbox)、常用布局管理器的使用212图形用户界面(GUI)(2)掌握下拉式菜单、一般对话框、文件对话框的创建、使用;掌握Swing常用容器、常用组件使用;了解JTable、JTree的基本用法;掌握Swing对话框类的使用掌握下拉式菜单的设计与装配;熟悉一般对话框、文件对话框的创建、使用;掌握Swing常用容器JFrame、JPanel的使用;掌握Swing常用组件使用;了解JTable、JTree的基本用法;掌握JOptionPane、JFileChooser、JColorChooser类的使用2实验大纲Java程序设计第6页13事件处理熟悉Java的事件委托模型、事件类和事件对象、事件侦听器与侦听接口、事件处理等内容理解事件委托模型、事件侦听器类与主类之间的关系:掌握在GUI中编程实现处理XXXEvent事件的步骤,能够正确处理常用事件214数据库连接(JDBC)理解JDBC的基本概念,掌握利用JDBC连接数据库的基本方法和步骤,并能执行多种查询、更新操作熟悉数据源的创建方法;掌握通过JDBC_ODBC桥,能够连接数据库,并进行查询、增删改操作;并能熟练操作Access、Excel、SQLServer;理解“什么是SQL注入问题”,编程时能予以防范;理解“预处理语句”优点,并能正确使用215多线程理解多线程的概念,掌握创建线程的两种方法,熟悉线程的生命周期及线程同步方法,熟悉多线程的基本应用理解线程各种状态;掌握Java中多线程的两种实现方法;熟悉多线程的基本应用:掌握Jar命令的用法;了解线程同步、线程间通信216网络编程熟悉网络编程的基本概念,掌握TCP编程的基本方法熟悉网络编程的基本概念,掌握TCP编程的基本方法,并能与多线程知识结合起来217设计性实验答辩对设计性实验进行答辩。对课程设计的情况进行答辩。2实验大纲Java程序设计第7页六、考核方式、方法与评分标准每次上实验课,教师根据学生的上课和实验完成情况,结合作业、课堂测试、提问、项目代码答辩,做出评价。考核内容学习目标分数百分比考勤准时到课堂,不影响其他人,准时离开课堂1010%大课表现主要考核学生对新课内容的预习及思考题的抢答、课堂听课情况,共计3分。学生主动回答问题1次得1分,一学期回答问题的最高分为3分,一次都不回答的,该项得分为0分。本项最高得分为3分33%网上测试学生在每次大课后,通过上网测试检查其对各知识点的掌握情况,题型包括判断、单选、多选等,题量为20—30小题,测试时间20—30分钟。本项考核主要依据学生的参与测试态度和成绩等来评分55%在线编程练习每周布置3-4题编程题,分为必做题、提高题两种类型,全部在OJ上编写、测评,学生必须在指定时间内完成必做题,根据学生完成情况给分;学生完成选做题可以额外加分。对于抄袭的给出0分或低分66%小课考核包含两方面内容:(1)进行3次小课课堂测试,每次10-15分钟,每次测试满分为1分,小计3分;(2)本学期的实验次数为16次,根据学生完成实验任务及课堂表现打分,小计8分。两项之和共计11分1111%代码阅读大课老师分阶段布置5个左右较大程序段,44%实验大纲Java程序设计第8页要求学生利用课余时间阅读、理解、运行,在14-16周内,小课老师随机抽取代码段,对学生当面进行考查,给出分数综合性实验与设计性实验在教学过程中布置1次综合性实验、1次设计性实验:(1)综合性实验给出思路、部分程序代码,要求学生理解、完善代码,并提交书面文档,小计4分;(2)设计性实验要求采用图形界面、JDBC、网络编程、多线程、文件与输入输出流等多种技术编程实现一个具有一定功能的C/S系统,主题由教师指定,学生可以小组方式组队,每组1-3人。每小组应提交设计文档、程序代码、小组分工情况等,并进行上台答辩,小计7分。两项之和为11分1111%期末考试考核学生对Java程序设计基本概念、基础知识掌握情况及应用水平的高低5050%七、采用的教材、参考书教材:《Java核心编程技术》(第二版)张屹、蔡木生主编大军理工大学出版社《Java核心编程实验指导教程》(第二版)张屹、蔡木生主编大军理工大学出版社参考书:《全国计算机等级考试二级教程--Java语言程序设计(2013年版)》教育部考试中心编著高等教育出版社《Java面向对象编程》(孙卫琴编著,电子工业出版社)《Java程序设计——示例与习题解析》(朱喜福等编,人民邮电出版社)《Java编程思想》(BruceEckel著,侯杰译,机械工业出版社)(第二版)《Java开发实战》(软件开发技术联盟编著,清华大学出版社)