课程教案

课程名称 Java程序设计
课程性质 专业选修课
开课年度 2023年
开课学期 秋季
授课班级 计21-123;计实验21;计贯通22;计专起本22-12
主讲教师 李欣
课程所属学院(部门) 信息学院
课程所属系(教研室) 计算机系

Table of Contents

1. 课程第1讲   第一知识单元 基本知识概述

第1周

日期
[2023-09-12 Tue]
地点
广学西302
章节
1.6、2.1、2.2、2.5、2.6、2.7、10.1、10.2
教学重点
  • 示例程序分析
  • 编程环境与工具
教学难点
讲授主要内容
  1. 程序设计与Java语言:了解程序设计语言的发展趋势和应用场景;了解什么是计算机语言; 了解程序设计的任务;了解Java语言的特点。能够对计算机语言、对程序设计有一定的认识,有利于更深入地使用计算机。
  2. 开发环境:了解Java语言的三个版本;了解Java程序类型与运行机制。
  3. 示例程序分析:简单的Java Application程序分析,理解语言的特点和运行机制。
  4. 编程环境与工具:了解Eclipse集成开发环境。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
  1. 分别描述 javajavac 命令的用途。
  2. 下载自己操作系统对应的JDK软件包,解压后查看其具有哪些子目录,同时描述每个子目录中存放文件的用途。
  3. 编写一个Java Application,利用JDK软件包中的工具编译并运行这个程序, 在屏幕上输出 I love Java!I don't like Java.I don't want to tell you if I like Java.
  4. 教材习题1-7 面向对象程序设计方法有哪些优点?
  5. 教材习题2-7 Java语言有哪些主要特点?
教学后记

2. 课程第2讲   第二知识单元 Java语言基础

第2周

日期
[2023-09-19 Tue]
地点
广学西302
章节
3.1、3.2、3.3、3.4、3.5、6.3
教学重点
  • 运算符及表达式
  • 流程控制语句
  • 数组
教学难点
  • 流程控制语句
  • 数组
讲授主要内容
  1. Java 程序的构成:程序设计与Java语言:了解Java程序设计的基本结构和组成元素。
  2. 数据类型、变量和常量:了解Java的数据类型、标识符、变量和常量。
  3. 运算符及表达式:了解运算符及表达式的概念,学会使用关系、逻辑和条件等运算符, 理解由这些运算符连接起来的表达式取值方法。 理解赋值与类型转换;掌握运算符号、运算优先级与结合性。
  4. 流程控制语句:理解并掌握顺序、选择、循环三种基本结构; 具有一定的算法设计能力及编写结构化程序的能力,为后续进一步学习程序设计方法奠定一定基础。
  5. 数组:理解数组的定义、初始化和使用。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

3. 课程第3讲   第三知识单元 面向对象程序设计 面向对象概述

第3周

日期
[2023-09-26 Tue]
地点
广学西302
章节
1.3、1.4、4.1、4.2、5.1、5.3.1
教学重点
教学难点
讲授主要内容
  1. 了解抽象和封装;
  2. 理解Java类的构成;
  3. 了解系统类库与自定义类;
  4. 了解继承;
  5. 了解多态。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

4. 课程第4讲   第三知识单元 面向对象程序设计 修饰符与访问控制 类的设计

第4周

日期
[2023-10-03 Tue]
地点
广学西302
章节
教学重点
  • 类的设计
教学难点
讲授主要内容
  1. 修饰符与访问控制
    • 理解类/域/方法的修饰符与访问控制。
  2. 类的设计
    • 理解如何使用Java语言设计合理的类。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
  1. 阅读教材 例4-10 中的程序,描述该例子中类的设计有什么问题。
  2. 教材 例4-11 中是如何改善以上问题的?这对我们进行类的设计有何启发?
  3. 习题4-3 使用抽象和封装有哪些好处?
  4. 编写 Calc 类,实现加法、减法、乘法、除法运算,并在主类中测试该类,同时给出程序源码及输出。
教学后记

5. 课程第5讲   第三知识单元 面向对象程序设计 继承与应用

第5周

日期
[2023-10-10 Tue]
地点
广学西302
章节
教学重点
  • 继承与应用
教学难点
  • 继承与应用
讲授主要内容
  • 继承与应用
    • 掌握类的继承
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

6. 课程第6讲   第三知识单元 面向对象程序设计 多态与应用 

第6周

日期
[2023-10-17 Tue]
地点
广学西302
章节
教学重点
  • 多态与应用
教学难点
  • 多态与应用
讲授主要内容
  1. 多态与应用
    • 理解多态的含义;
    • 理解方法的重载;
    • 理解构造方法的重载;
    • 掌握接口与接口实现。
    • 包结构与使用。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

7. 课程第7讲   第四知识单元 工具类与算法 基础类库 向量类 数据结构类

第7周

日期
[2023-10-24 Tue]
地点
广学西302
章节
教学重点
  • 基础类库
  • 向量类
教学难点
  • 向量类
  • 数据结构类
讲授主要内容
  1. 基础类库
    • 了解基础类库的层次结构;
    • 理解和掌握基础类库的使用方法;
    • 熟练使用 Math System Calendar 这些基本数据类型的包装类。
  2. 向量类、字符串等类
    • 对比数组,理解并掌握向量类的优点,并熟练使用;
    • 理解并掌握 String 类及相关操作;
    • 了解 StringBuffer 类的使用。
  3. 数据结构类
    • 学会使用Java语言构建数据结构类;
    • 了解链表、队列、栈、二叉树等数据结构的实现。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

8. 课程第8讲   第四知识单元 工具类与算法 查找与排序 集合与范型

第8周

日期
[2023-10-31 Tue]
地点
广学西302
章节
教学重点
教学难点
  • 查找与排序
  • 集合与范型
讲授主要内容
  1. 查找与排序
    • 了解多种排序算法的特点;
    • 掌握系统类实现的排序算法与使用;
    • 了解多种查找算法的特点;
    • 掌握系统类实现的查找算法与使用。
  2. 集合与范型
    • 了解集合的基本概念与体系结构;
    • 理解 List 集合, Map 集合的使用;
    • 了解Java范型的基本概念和应用。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

9. 课程第9讲   第五知识单元 高级编程 异常处理 多线程

第9周

日期
[2023-11-07 Tue]
地点
广学西302
章节
教学重点
教学难点
  • 异常处理
  • 多线程
讲授主要内容
  1. 异常处理
    • 了解异常的概念和意义;
    • 了解预定义异常和自定义异常;
    • 理解异常处理过程;
    • 了解异常转移。
  2. 多线程
    • 了解进程和线程的关系;
    • 理解两种实现多线程的方式 ThreadRunnable
    • 了解线程的同步与互斥。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

10. 课程第10讲   第五知识单元 高级编程 输入输出

第10周

日期
[2023-11-14 Tue]
地点
广学西302
章节
教学重点
教学难点
  • 输入输出
讲授主要内容
  • 理解面向字节的输入输出流;
  • 理解面向字符的输入输出流;
  • 了解节点流和过滤流。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

11. 课程第11讲   第五知识单元 高级编程 网络编程

第11周

日期
[2023-11-21 Tue]
地点
广学西302
章节
教学重点
教学难点
  • 网络编程
讲授主要内容
  • 了解网络协议;
  • 了解URL相关概念及操作;
  • 了解基于socket的网络编程。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

12. 课程第12讲   第五知识单元 高级编程 数据库编程

第12周

日期
[2023-11-28 Tue]
地点
广学西302
章节
教学重点
教学难点
  • 数据库编程
讲授主要内容
  • 了解数据库、SQL 语言和 MySQL 系统的基础知识;
  • 理解 JDBC 数据库访问的运行机制;
  • 理解 Java 数据库编程的应用实例。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

13. 课程第13讲   第六知识单元 综合应用 例题分析

第13周

日期
[2023-12-05 Tue]
地点
广学西302
章节
教学重点
  • 例题分析
教学难点
  • 例题分析
讲授主要内容
  • 结合典型例题分析,综合利用所学知识,明确课程重点,突破难点。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

14. 课程第14讲   第六知识单元 综合应用 例题分析

第14周

日期
[2023-12-12 Tue]
地点
广学西302
章节
教学重点
  • 例题分析
教学难点
  • 例题分析
讲授主要内容
  • 结合典型例题分析,综合利用所学知识,明确课程重点,突破难点。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

15. 课程第15讲   第六知识单元 综合应用 例题分析

第15周

日期
[2023-12-19 Tue]
地点
广学西302
章节
教学重点
  • 例题分析
教学难点
  • 例题分析
讲授主要内容
  • 结合典型例题分析,综合利用所学知识,明确课程重点,突破难点。
本次课主体教学方式、方法
  1. 课堂讲授
  2. 持续改进版教案
  3. 可交互课件
  4. 板书
  5. 课堂互动
布置作业
教学后记

16. 课程第16讲   期末考试

第16周

日期
[2023-12-26 Tue]
地点
广学西302
章节
教学重点
  • 期末考试
教学难点
  • 期末考试
讲授主要内容
  • 期末考试
本次课主体教学方式、方法
  • 期末考试
布置作业
教学后记