《Java程序设计》课程教学大纲 一、课程概况 课程代码:04451100 课程名称:Java程序设计 课程学分:3.5 课程学时:56(理论学时:28;实验(实践)学时:28) 课程性质:考查 开课部门:信息科学与工程学院 建议修读学期:04 建议先修课程:计算机导论 适用专业(方向):计算机科学与技术、物联网、网络工程 二、课程地位、作用与任务 《Java程序设计》是计算机科学与技术专业、物联网专业和网络工程专业的一门重要的 专业基础课。课程在人才培养方案中对本专业毕业生在以下4个方面起了重要的支撑作用: (1)具有扎实的程序设计语言基础知识;(2)针对问题需求,能进行软件设计并实现:(3) 能查阅文献,定义问题并进行问题分析;(4)能使用软件设计与开发工具。该课程的特点是 理论性与实践性紧密结合。课程的主要任务是使学生理解面向对象程序设计的基本概念,培 养学生面向对象的基本编程思想和方法,掌握Java面向对象程序设计语言的基本语法、常 用类和Java编程中的重要技术,培养良好的编程习惯,具有初步的Java应用程序开发能力。 三、课程目标 (一)教学目标 Java程序设计具体要求达到的特定教学目标包括: 1.教学目标1.掌握Java程序设计基本语法;熟悉使用字符串、时间、数字以及日期等常用 的工具类;了解Java面向对象程序设计语言的三大特性;熟悉Java异常体系并能掌握异常 处理和自定义方法;掌握集合框架的层次结构以及泛型的使用;学会输入输出流的继承关系 并能使用I/O流对磁盘文件进行读写操作;掌握Java多线程编程;熟悉JFC Swing可视化组 件的使用;掌握基于TCP/UDP的Socket网络编程方法。(指标点1.2) 2.教学目标2.应用面向对象的三大特性解决和分析问题,学会根据问题描述分析设计类; 应用集合实现基本信息在内存中的存储、查询、排序、新增、修改和删除;应用O流和 Fl对象实现基本信息在磁盘中的存储、查询、排序、新增、修改和删除;应用多线程加深 对多线程、多进程状态切换、同步与互斥的理解;应用Socket网络编程深入理解异地计算 机进程间通信的客户服务器模式。(指标点2.2) 18
18 《Java 程序设计》课程教学大纲 一、课程概况 课程代码:04451100 课程名称:Java 程序设计 课程学分:3.5 课程学时:56(理论学时:28;实验(实践)学时:28) 课程性质:考查 开课部门:信息科学与工程学院 建议修读学期:04 建议先修课程:计算机导论 适用专业(方向):计算机科学与技术、物联网、网络工程 二、课程地位、作用与任务 《Java 程序设计》是计算机科学与技术专业、物联网专业和网络工程专业的一门重要的 专业基础课。课程在人才培养方案中对本专业毕业生在以下 4 个方面起了重要的支撑作用: (1)具有扎实的程序设计语言基础知识;(2)针对问题需求,能进行软件设计并实现;(3) 能查阅文献,定义问题并进行问题分析;(4)能使用软件设计与开发工具。该课程的特点是 理论性与实践性紧密结合。课程的主要任务是使学生理解面向对象程序设计的基本概念,培 养学生面向对象的基本编程思想和方法,掌握 Java 面向对象程序设计语言的基本语法、常 用类和 Java 编程中的重要技术,培养良好的编程习惯,具有初步的 Java 应用程序开发能力。 三、课程目标 (一)教学目标 Java 程序设计具体要求达到的特定教学目标包括: 1.教学目标 1. 掌握 Java 程序设计基本语法;熟悉使用字符串、时间、数字以及日期等常用 的工具类;了解 Java 面向对象程序设计语言的三大特性;熟悉 Java 异常体系并能掌握异常 处理和自定义方法;掌握集合框架的层次结构以及泛型的使用;学会输入输出流的继承关系 并能使用 I/O 流对磁盘文件进行读写操作;掌握 Java 多线程编程;熟悉 JFC Swing 可视化组 件的使用;掌握基于 TCP/UDP 的 Socket 网络编程方法。(指标点 1.2) 2.教学目标 2. 应用面向对象的三大特性解决和分析问题,学会根据问题描述分析设计类; 应用集合实现基本信息在内存中的存储、查询、排序、新增、修改和删除;应用 I/O 流和 File 对象实现基本信息在磁盘中的存储、查询、排序、新增、修改和删除;应用多线程加深 对多线程、多进程状态切换、同步与互斥的理解;应用 Socket 网络编程深入理解异地计算 机进程间通信的客户服务器模式。(指标点 2.2)
3教学目标3.建立面向对象设计和分析的概念,能使用面向对象的思想根据特定问题域分 析类及其关系,并设计类层次结构,与面向过程程序设计方法对比以做出两种方法优势和不 足的判定。(指标点2.2,指标点3.2,指标点5.1) 4.教学目标4.掌握错误异常处理方法,能够调试和跟踪程序执行。(指标点1.2,指标点3.2) 5.教学目标5.综合面向对象分析设计思想,Java基本语法、集合框架、I/O流与文件、多线 程、Socket网络编程等相关知识,能使用Java程序设计语言分析和解决问题,培养学生综 合应用知识的能力。(指标点3.1,指标点3.2,指标点5.1) (二)本课程支撑的半业要求 1.本课程支撑的毕业要求:(毕业要求1、2、3、5)(毕业要求见2018版人才培养方案) 2.本课程支撑的指标点:指标点1.2、2.2、3.1、3.2、5.1 (1)指标点1.2:具有扎实的工程基础知识和专业基本理论知识。 (2)指标点22:能够运用数理、自然科学和工程科学的基本原理,通过查阅科技文献,分 析复杂工程中遇到的问题。 (3)指标点3.1:针对复杂工程问题需求,能准确设定系统目标和要求,定义软件功能、概 念和体系结构;设计过程能以用户为中心,从用户体验角度进行软、硬件系统设计。 (4)指标点3.2:使用特定软件工具正确进行系统建模,设计过程划分科学合理,确保目标 达成的可能性,能按概念设计、概要设计、详细设计进行软件系统设计。 (5)指标点5.1:能选择与使用恰当的技术、资源、现代工程与信息技术工具定义与描述一 般工程问题。 (三)课程教学目标与毕业要求对应表 《Java程序设计》课程教学目标与半业要求的对应表 课程名称:Java程序设计 任课教师:段林涛 课程性质:专业必修 课程学分:3.5 课程支撑的半业要求 课程目标、达成途径、评价依据 毕业要求1: 教学目标:培养学生掌握扎实的Java程序设计语言基本 1.2:具有扎实的工程基础知识和 语法、面向对象程序设计的基本理论知识。 专业基本理论知识 达成途径:通过掌握Java语言的数据类型、表达式与控 制语句、常用类、面向对象特性,训练学生综合运用Java 基础语法知识,解决一般面向对象问题。 评价依据:课堂提问、实验、作业和考试。 半业要求2: 教学目标:掌握错误异常处理方法,能够调试和跟踪程 22:能够运用数理、自然科学和 序执行,培养学生利用基础理论知识和工具分析和解决 工程科学的基本原理,通过查阅 项目编码实现过程中的问题。 科技文献,分析复杂工程中遇到 达成途径:Java异常机制包含受检查和不受检查两种异 的问题。 常类型,为开发人员提供异常处理方法,利用Eclipse IDE 集成调试器可以分析程序设计过程中的错误位置。 评价依据:课堂提问、实验、作业和考试。 毕业要求3: 教学目标:培养学生利用基础理论知识分析工程问题的 19
19 3.教学目标 3. 建立面向对象设计和分析的概念,能使用面向对象的思想根据特定问题域分 析类及其关系,并设计类层次结构,与面向过程程序设计方法对比以做出两种方法优势和不 足的判定。(指标点 2.2,指标点 3.2,指标点 5.1) 4.教学目标 4. 掌握错误异常处理方法,能够调试和跟踪程序执行。(指标点 1.2,指标点 3.2) 5.教学目标 5. 综合面向对象分析设计思想,Java 基本语法、集合框架、I/O 流与文件、多线 程、Socket 网络编程等相关知识,能使用 Java 程序设计语言分析和解决问题,培养学生综 合应用知识的能力。(指标点.3.1,指标点 3.2,指标点 5.1) (二)本课程支撑的毕业要求 1. 本课程支撑的毕业要求:(毕业要求 1、2、3、5)(毕业要求见 2018 版人才培养方案) 2. 本课程支撑的指标点:指标点 1.2、2.2、3.1、3.2、5.1 (1)指标点 1.2:具有扎实的工程基础知识和专业基本理论知识。 (2)指标点 2.2:能够运用数理、自然科学和工程科学的基本原理,通过查阅科技文献,分 析复杂工程中遇到的问题。 (3)指标点 3.1:针对复杂工程问题需求,能准确设定系统目标和要求,定义软件功能、概 念和体系结构;设计过程能以用户为中心,从用户体验角度进行软、硬件系统设计。 (4)指标点 3.2:使用特定软件工具正确进行系统建模,设计过程划分科学合理,确保目标 达成的可能性,能按概念设计、概要设计、详细设计进行软件系统设计。 (5)指标点 5.1:能选择与使用恰当的技术、资源、现代工程与信息技术工具定义与描述一 般工程问题。 (三)课程教学目标与毕业要求对应表 《Java 程序设计》课程教学目标与毕业要求的对应表 课程名称:Java 程序设计 任课教师:段林涛 课程性质:专业必修 课程学分:3.5 课程支撑的毕业要求 课程目标、达成途径、评价依据 毕业要求 1: 1.2:具有扎实的工程基础知识和 专业基本理论知识 教学目标:培养学生掌握扎实的 Java 程序设计语言基本 语法、面向对象程序设计的基本理论知识。 达成途径:通过掌握 Java 语言的数据类型、表达式与控 制语句、常用类、面向对象特性,训练学生综合运用 Java 基础语法知识,解决一般面向对象问题。 评价依据:课堂提问、实验、作业和考试。 毕业要求 2: 2.2:能够运用数理、自然科学和 工程科学的基本原理,通过查阅 科技文献,分析复杂工程中遇到 的问题。 教学目标:掌握错误异常处理方法,能够调试和跟踪程 序执行,培养学生利用基础理论知识和工具分析和解决 项目编码实现过程中的问题。 达成途径:Java 异常机制包含受检查和不受检查两种异 常类型,为开发人员提供异常处理方法,利用 Eclipse IDE 集成调试器可以分析程序设计过程中的错误位置。 评价依据:课堂提问、实验、作业和考试。 毕业要求 3: 教学目标:培养学生利用基础理论知识分析工程问题的
3.1:针对复杂工程问题需求,能 能力。 准确设定系统目标和要求,定义 达成途径:数组能存储多个同种类型元素的线性存储结 软件功能、概念和体系结构;设 构。利用数组可实现对基本数据信息进行查询、增加, 计过程能以用户为中心,从用户 修改和删除等基本操作。 体验角度进行软、硬件系统设计。 评价依据:课堂提问、实验、作业和考试 毕业要求3: 教学目标:建立面向对象设计和分析的概念,能使用面 3.2:使用特定软件工具正确进行 向对象的思想根据特定问题域分析类及其关系,并设计 系统建模,设计过程划分科学合 类层次结构,与面向过程程序设计方法对比以做出两种 理,确保目标达成的可能性,能 方法优势和不足的判定。 按概念设计、概要设计、详细设 达成途径:掌握面向对象特性,理解类图,类关系图的 计进行软件系统设计。 绘制方法,使用UML建模工具、Visio绘图工具。 评价依据:课堂提问、实验、作业和考试 半业要求5: 教学目标:综合面向对象分析设计思想,Java基本语法、 5.1:能选择与使用恰当的技术、 集合框架、I/O流与文件、多线程、Socket网络编程等相 资源、现代工程与信息技术工具 关知识,能使用Java程序设计语言分析和解决问题,培 定义与描述一般工程问题。 养学生综合应用知识的能力。 达成途径:集合框架、文件和数据库存储基本数据,实 现对基本数据信息进行查询、增加,修改和删除等基本 操作。 评价依据:课堂提问、实验、作业和考试 四、课程内容 教学内容 作业要求 第一章Java程序设计概述 自学内容:DK安装目录下的常用工具。 1.5Java语言及其特点 课堂作业: 1.6程序的编译与运行 1.7常见错误 l.Java与C+在语法上的主要区别是什 1.8开发环境搭建 么? l.9使用Java核心API文档 2.Java语言为什么能实现跨平台执行? 知识点: 课外作业: l.Java面向对象语言发展简史和主要特点。 1完成本章小结 2.JVM,RE,JDK三者的关系,编译与运行 2.什么是JVM、JRE和JDK?JVM在Java 程序执行过程中的作用是什么? Java程序的步骤。 3程序设计过程中常见的语法错误和异常。 4.建立Java应用程序开发环境。 5.下载和使用JavaAPI文档。 第二章标识符与数据类型 自学内容:Java字符集 2.1标识符 课堂作业: 2.2Java基本数据类型 2.3引用数据类型 1.基本数据类型与引用数据类型比较相等 2.4类型转换 的区别是什么? 2.5类和对象的初步介绍 2.强制类型转换的语法格式是什么? 3.常量和变量的定义是什么? 20
20 3.1:针对复杂工程问题需求,能 准确设定系统目标和要求,定义 软件功能、概念和体系结构;设 计过程能以用户为中心,从用户 体验角度进行软、硬件系统设计。 能力。 达成途径:数组能存储多个同种类型元素的线性存储结 构。利用数组可实现对基本数据信息进行查询、增加, 修改和删除等基本操作。 评价依据:课堂提问、实验、作业和考试 毕业要求 3: 3.2:使用特定软件工具正确进行 系统建模,设计过程划分科学合 理,确保目标达成的可能性,能 按概念设计、概要设计、详细设 计进行软件系统设计。 教学目标:建立面向对象设计和分析的概念,能使用面 向对象的思想根据特定问题域分析类及其关系,并设计 类层次结构,与面向过程程序设计方法对比以做出两种 方法优势和不足的判定。 达成途径:掌握面向对象特性,理解类图,类关系图的 绘制方法,使用 UML 建模工具、Visio 绘图工具。 评价依据:课堂提问、实验、作业和考试 毕业要求 5: 5.1:能选择与使用恰当的技术、 资源、现代工程与信息技术工具 定义与描述一般工程问题。 教学目标:综合面向对象分析设计思想,Java 基本语法、 集合框架、I/O 流与文件、多线程、Socket 网络编程等相 关知识,能使用 Java 程序设计语言分析和解决问题,培 养学生综合应用知识的能力。 达成途径:集合框架、文件和数据库存储基本数据,实 现对基本数据信息进行查询、增加,修改和删除等基本 操作。 评价依据:课堂提问、实验、作业和考试 四、课程内容 教学内容 作业要求 第一章 Java 程序设计概述 1.5 Java 语言及其特点 1.6 程序的编译与运行 1.7 常见错误 1.8 开发环境搭建 1.9 使用 Java 核心 API 文档 知识点: 1. Java 面向对象语言发展简史和主要特点。 2. JVM,JRE,JDK 三者的关系,编译与运行 Java 程序的步骤。 3.程序设计过程中常见的语法错误和异常。 4. 建立 Java 应用程序开发环境。 5. 下载和使用 Java API 文档。 自学内容:JDK 安装目录下的常用工具。 课堂作业: 1.Java 与 C++在语法上的主要区别是什 么? 2.Java 语言为什么能实现跨平台执行? 课外作业: 1.完成本章小结 2.什么是 JVM、JRE 和 JDK?JVM 在 Java 程序执行过程中的作用是什么? 第二章 标识符与数据类型 2.1 标识符 2.2 Java 基本数据类型 2.3 引用数据类型 2.4 类型转换 2.5 类和对象的初步介绍 自学内容:Java 字符集 课堂作业: 1.基本数据类型与引用数据类型比较相等 的区别是什么? 2.强制类型转换的语法格式是什么? 3.常量和变量的定义是什么?
知识点: 课外作业: 1完成本章小结 1.标识符命名规范,保留关键字 2.实例化对象的时候new关键字的作用是 2.八种基本数据类型、存储长度、数据范围 什么? 3.引用数据类型初始化、赋值、比较大小 4.基本数据类型与引用数据类型的类型转换 5.类的定义与实例化 第三章表达式和流程控制语句 自学内容:JDK1.5后的for语句的新语法 3.1运算符与表达式 3.2位运算符 课堂作业: 3.3选择结构 1.绘制选择结构和循环结构的流程图 3.4循环结构 2.提取一个字节指定位置的数据,设置一 知识点: 个字节中指定位置的值。 1.算式运算表达式、关系表达式、逻辑表达式, 3.返回三个整型数的最大值和最小值 条件表达式 课外作业: 2左移、右移、与、或、非 1.完成本章小结 3.if语句 2.绘制金字塔 4.switch语句 3.计算1累计到100的和 5.for循环语句 6.while、do while循环语句 7.break、continue子句 第四章数组和字符串 自学内容:阅读vector源码,熟悉向量实现 4.1数组 数据存储的原理以及实现线程安全的方法。 4.2 Vector类 4.3字符串类型 课堂作业: 知识点: 1返回数组元素的最大最小值 1.一维数组、二维数组 2.对数组按增序或降序排序 2.向量的存储结构 3.向量的关键方法 3.使用Vector存储和处理学生信息 4.字符串常量、字符串引用类型变量的使用 5.字符串对象的常用方法 课外作业: 1完成本章小结 2.创建矩阵类完成矩阵相关操作 第五章面向对象高级特性 自学内容:几种内部类的实例化 5.1面向对象特性 5.2抽象类 课堂作业: 5.3内部类 1形状类的面积和周长计算 5.4重载与覆盖 5.5接口 2.员工类的工资计算 知识点: 3.匿名内部类实现接口 1.一维数组、二维数组 2.向量的存储结构 4.接口实例训练 3.向量的关键方法 课外作业: 4.字符串常量、字符串引用类型变量的使用 21
21 知识点: 1. 标识符命名规范,保留关键字 2. 八种基本数据类型、存储长度、数据范围 3. 引用数据类型初始化、赋值、比较大小 4. 基本数据类型与引用数据类型的类型转换 5. 类的定义与实例化 课外作业: 1.完成本章小结 2.实例化对象的时候 new 关键字的作用是 什么? 第三章 表达式和流程控制语句 3.1 运算符与表达式 3.2 位运算符 3.3 选择结构 3.4 循环结构 知识点: 1.算式运算表达式、关系表达式、逻辑表达式, 条件表达式 2.左移、右移、与、或、非 3.if 语句 4.switch 语句 5.for 循环语句 6.while、do while 循环语句 7.break、continue 子句 自学内容:JDK 1.5 后的 for 语句的新语法 课堂作业: 1. 绘制选择结构和循环结构的流程图 2. 提取一个字节指定位置的数据,设置一 个字节中指定位置的值。 3.返回三个整型数的最大值和最小值 课外作业: 1.完成本章小结 2.绘制金字塔 3.计算 1 累计到 100 的和 第四章 数组和字符串 4.1 数组 4.2 Vector 类 4.3 字符串类型 知识点: 1. 一维数组、二维数组 2. 向量的存储结构 3. 向量的关键方法 4. 字符串常量、字符串引用类型变量的使用 5. 字符串对象的常用方法 自学内容:阅读 vector 源码,熟悉向量实现 数据存储的原理以及实现线程安全的方法。 课堂作业: 1.返回数组元素的最大最小值 2.对数组按增序或降序排序 3.使用 Vector 存储和处理学生信息 课外作业: 1.完成本章小结 2.创建矩阵类完成矩阵相关操作 第五章 面向对象高级特性 5.1 面向对象特性 5.2 抽象类 5.3 内部类 5.4 重载与覆盖 5.5 接口 知识点: 1. 一维数组、二维数组 2. 向量的存储结构 3. 向量的关键方法 4. 字符串常量、字符串引用类型变量的使用 自学内容:几种内部类的实例化 课堂作业: 1.形状类的面积和周长计算 2.员工类的工资计算 3.匿名内部类实现接口 4.接口实例训练 课外作业:
5.字符串对象的常用方法 1完成本章小结 2.阅读System.out下的println方法,理解方 法重载的语法特点 3通过形状类面积和周长的计算理解封装、 继承和多态 第六章异常机制 自学内容:受检查与不受检查异常的区别 6.1异常体系结构 6.2常见异常类型 课堂作业: 63异常处理方法 1.Throwable在异常类层次中的位置? 6.4自定义异常 知识点: 2.如果都采用消极异常处理,最后异常会交 由谁处理? 1.异常类层次关系 2.主动异常处理 3.自定义异常并实现异常抛出与处理。 3.消极异常处理 4.异常处理中的资源释放 课外作业: 5.定义自己的异常类型 1.完成本章小结 2.列举常见异常类? 3.说明NullPointerException等异常产生的 条件 第七章集合框架 自学内容:泛型类和泛型方法 7.1常见集合类 7.2泛型 课堂作业: 7.3迭代器 1.集合存储数据的基本操作。 知识点: 2.遍历集合中的元素并输出元素属性。 1,集合接口/类层次关系 2.集合遍历 课外作业: 3.集合工具类 1.完成本章小结 4.集合常用方法 2.什么是泛型,为什么要使用泛型? 5.泛型 3.如何借助于泛型定义一个线性表 第八章GUI图形界面编程 自学内容:Java GUI绘图功能 8.1AWT,Swing组件 8.2容器 堂作业: 8.3布局管理器 1.集合存储数据的基本操作。 8.4事件与事件监听器 8.5适配器 2.遍历集合中的元素并输出元素属性。 知识点: 课外作业: 1.容器与布局 1完成本章小结 2.事件处理 2.编写一个程序实现计算器的基本功能 3.常用Swing组件 3.编写一个程序实现选择人名,则在文本框 22
22 5. 字符串对象的常用方法 1.完成本章小结 2.阅读 System.out 下的 println 方法,理解方 法重载的语法特点 3.通过形状类面积和周长的计算理解封装、 继承和多态 第六章 异常机制 6.1 异常体系结构 6.2 常见异常类型 6.3 异常处理方法 6.4 自定义异常 知识点: 1.异常类层次关系 2.主动异常处理 3.消极异常处理 4.异常处理中的资源释放 5.定义自己的异常类型 自学内容:受检查与不受检查异常的区别 课堂作业: 1.Throwable 在异常类层次中的位置? 2.如果都采用消极异常处理,最后异常会交 由谁处理? 3.自定义异常并实现异常抛出与处理。 课外作业: 1.完成本章小结 2.列举常见异常类? 3.说明 NullPointerException 等异常产生的 条件 第七章 集合框架 7.1 常见集合类 7.2 泛型 7.3 迭代器 知识点: 1.集合接口/类层次关系 2.集合遍历 3.集合工具类 4.集合常用方法 5.泛型 自学内容:泛型类和泛型方法 课堂作业: 1.集合存储数据的基本操作。 2.遍历集合中的元素并输出元素属性。 课外作业: 1.完成本章小结 2.什么是泛型,为什么要使用泛型? 3.如何借助于泛型定义一个线性表 第八章 GUI 图形界面编程 8.1 AWT,Swing 组件 8.2 容器 8.3 布局管理器 8.4 事件与事件监听器 8.5 适配器 知识点: 1.容器与布局 2.事件处理 3.常用 Swing 组件 自学内容:Java GUI 绘图功能 课堂作业: 1.集合存储数据的基本操作。 2.遍历集合中的元素并输出元素属性。 课外作业: 1.完成本章小结 2.编写一个程序实现计算器的基本功能 3.编写一个程序实现选择人名,则在文本框