教研室主任:韩莉莉
执笔人:韩莉莉
一.课程基本信息
开课单位:管理学院
课程名称:Java程序设计
课程编号:182022
英文名称:Java
programming
课程类型:专业基础课
总学时:68(理论)+34(实验)
学分:3
开设专业:信息系统与信息管理
先修课程:C语言
二.课程任务和目标
(一)课程任务
《Java程序设计》是计算机软件专业的核心课程之一,也是基础课程之一,Java
语言是当前十分流行的一门经典网络编程语言.本课程主要介绍了Java
语言的功能和特点,主要内容包括:Java
语言基础知识,Java
语法构成,面向对象编程技术,常用系统类使用,图形用户界面设计,图形处理,多媒体处理,异常处理,文件和流处理,多线程技术和网络编程技术.目的是使学生掌握一门高级网络程序设计语言,了解网络程序设计方法,具有基本的进行网络程序设计的能力.
(二)课程目标
1.能力目标
(1)培养学生规范编码和良好的程序设计风格
(2)培养学生面向对象编程的思维和提高逻辑思维能力
(3)培养学生发现问题、分析问题和解决问题的能力
(4)培养良好职业素质和职业道德
(5)培养团队协作和和谐的沟通能力
2.知识目标
(1)掌握Java语言基础
(2)熟练掌握对象和类
(3)掌握继承与多态
(4)熟练掌握数组和字符串
(5)掌握Java的异常处理
(6)掌握Java的输入/输出
(7)了解GUI程序设计
(8)熟练掌握Java的集合
(9)了解多线程和网络编程
(10)掌握JDBC技术
(11)了解面向对象的常用设计模式
(12)掌握Java程序设计的思想和方法
三、教学内容与要求
第一章
Java概述
1.1
Java起源、Java特点、Java开发环境搭建、第一个Java小程序例子.
目的要求:
1.了解Java的起源
2.了解Java的特点
3.熟练掌握搭建Java开发环境
第二章
Java基本语法
2.1
数据类型,运算符、表达式及其控制结构.
2.2
数组和String字符串.
2.3
命名规范和注释.
目的要求:
1.掌握运算和表达式
2.熟练掌握语句、字符串和数组的常用方法和素性
第三章
类与对象
3.1类的定义、对象的创建、类与对象关系、数组对象.
3.2类的属性和方法的定义、方法重载和递归.
3.3静态成员、封装、构造方法.
3.4成员的访问控制、代码块、this、static和Date类.
目的要求:
1.掌握类的成员变量和成员方法
2.熟练掌握创建对象和使用对象
3.掌握对象的引用和实体
4.掌握方法中的参数传值
5.熟练掌握构造方法和方法重载
6.了解static和this关键字,访问权限(private、default、protected和public)
第四章
继承 4.1抽象类的定义、抽象类的方法、继承的基本概念.
4.2派生子类、继承原则、方法覆盖和重载.
4.3super、final关键字和Object类.
目的要求:
1.掌握抽象类的属性和抽象方法
2.掌握抽象类的原理和作用,子类的继承性
3.熟练掌握变量的隐藏和方法的重写
4.掌握方法的重载与重写的异同点
5.掌握super和final关键字.
第五章
接口 5.1接口的定义、接口的特性、接口的使用、接口的作用、接口与抽象类的区别、接口继承.
5.2接口回调、接口参数、接口的实际应用(制定标准).
目的要求:
1.掌握接口与抽象类的区别
2.掌握接口的继承,接口回调和接口做参数
第六章
多态 6.1强制类型转换、对象的多态性、向上类型转换和向下类型转换.
6.2实体类的多态性、抽象类的多态性、接口的多态性和多态的特性.
目的要求:
1.熟练掌握向上类型转换
2.掌握向下类型转换和多态实际应用
第七章
内部类
7.1静态内部类、局部内部类和实例内部类.
7.2匿名内部类、匿名对象、内部类的特点和使用范围.
目的要求:
1.掌握静态内部类、实例内部类和局部内部类的创建和调用
2.熟练掌握匿名内部类的创建和调用
第八章
异常 8.1
异常的概念、异常的处理机制、Exception与RuntimeException类、try-catch-finaly语句.
8.2
throws与throw关键字、断言、异常继承结构、自定义异常.
目的要求:
1.熟练掌握异常的处理
2.了解自定义异常
第九章
IO操作
9.1操作文件的File类、RandomAccessFile类、流的定义、字节流与字符流基本操作.
9.2
转换流(OutputStreamWriter类与InputStreamReader类)、内存操作流、管道流、打印流、System类对IO的支持.
9.3
BufferedReader类、Scanner类、数据流、合并流、压缩流和对象序列化.
目的要求:
1.掌握文件类File的基本方法和属性
2.熟练掌握字符流与字节流的基本操作
3.熟练掌握转换流-OutputStreamWriter类与InputStreamWriter类的基本操作
4.熟练掌握System类对IO的支持的常用的方法和属性
5.掌握BufferedReader类的常用方法和常用属性和Scanner的基本操作
第十章
集合 10.1
集合的概念、Collection接口、List接口、ArrayList(多态数组)和LinkedList(链表)、Set接口与SortedSet接口、HashSet(散列集).
10.2
Map接口、HashMap(散列映射)、Hashtable(散列表)、TreeSet(树集)和TreeMap(树映集).
目的要求:
1.熟练掌握ArrayList(动态数组)、HashMap(散列映射)和Vector(向量)的基本操
2.掌握LinkedList(链表)、Stack(栈)和HashSet(散列集)基本操作
第十一章
图形用户界面
11.1
AWT简介、Swing简介、基本容器:JFrame、标签组件:JLabel、按钮组件:JButton和布局管理器.
11.2
其它容器(JPanel、JSplitPane、JTabbedPane、JScrollPane、JdesktopPane与JInternalFrame)、不弹起的按钮组件、文件组件、事件处理、单选按钮.
11.3
复选框、列表框、下拉列表框、菜单组件、文件选择框、表格.
目的要求:
1.掌握JFrame,标签组件:JLable,按钮组件:JButton,布局管理器
2.熟练掌握JRadioButton,复选按钮:JCheckBox,列表框:JList,下拉列表框:JComboBox,菜单组件:JMenu和JMenuBar,文件选择框:JFileChooser,事件处理.
第十二章
Applet应用程序
12.1
Applet类的常用方法、Applet的生命周期、JApplet类的常用方法.
12.2
Applet与HTML混合使用、Applet与多媒体(音频和视频).
目的要求:
1.掌握Applet类的常用方法,JApplet的常用方法和属性
第十三章
多线程
13.1进程与线程的定义和关系、线程的实现(两种方法)、线程的状态、线程的常用操作方法.
13.2
线程操作范例、同步于死锁、线程的生命周期、线程操作案例(生产者与消费者问题).
目的要求:
1.熟练掌握创建线程的方式和线程的常用方法
2.掌握线程的调度与优先级,资源共享(同步、等待、通知和死锁)
第十四章
网络通信
14.1
IP地址简介、InetAddress类、URL与URLConnection、URLEncoder与URLDecoder使用和关系.
14.2
ServerSocket类与Socket类、TCP简介、TCP程序,在服务器上创建应用多线程、UDP简介和UDP程序设计.
目的要求:
1.掌握URL类和URLConnection类的常用方法和属性
2.熟练掌握InetAddress类和Socket套接字类的常用方法和属性
3.掌握UDP数据报的打包、发送与接收数据包和广播数据包的操作
第十五章
JDBC
15.1
JDBC简介、SQL
Server2000安装与使用、SQL语句(增、删、改、查)、采用JDBC-ODBC桥连接数据库.
15.2
使用纯Java数据库驱动连接数据库的步骤、ResultSet接口和PreparedStatement接口、存储过程、事件处理.
目的要求:
1.掌握MySql数据库简介、安装及其配置
2.熟练掌握JDBC操作步骤
3.熟练掌握Connection接口、Statement接口、PreparedStatement接口的使用
4.掌握事件处理
四、学时分配
课时分配表
章次 各教学环节学时分配
小计讲授
实验 上机 习题 讨论课外备注
第一章
Java概述
4 2 0 2 第二章
Java语言基础
9 5 0 4 第三章
类与对象
6 4 0 2 第四章
抽象类与继承
7 5 0 2 第五章
接口 5 5 0 2 第六章
多态 5 5 0 2 第七章
内部类
5 3 0 2 第八章
异常 4 2 0 2 第九章
I/O操作
10 8 0 2 第十章
集合 7 5 0 2 第十一章
图形用户界面
12 8 0 4 第十二章
Applet应用程序
4 2 0 2 第十三章
多线程
6 4 0 2 第十四章
网络通信
6 4 0 2 第十五章
JDBC
8 6 0 2 合计 102
68 0 34 五.考核说明及教学参考书目
考核方式:期末笔试闭卷,平时成绩占总成绩的20%.
教材:张亦辉等编著《Java面向对象程序设计》
人民邮电出版社
2008年10月
参考资料:
1.《Java开发实战经典》,李兴华,清华大学出版社
2.《Java基础与实例精讲》,宾春清
李建瑜,北京航天航空大学出版社,2009年7月3.《Java开发技术大全》,刘新,清华大学出版社,2009年2月