《面向对象程序设计》课程教学大纲 一、课程基本信息 课程代码:16106904 课程名称:面向对象程序设计 英文名称:Object Oriented Programming 课程类别:专业必修课 学时:64(其中实验课20学时) 学分:4 适用对象:软件工程、计算机科学与技术专业、电子商务专业本科 考核方式:考试 先修课程:C语言程序设计 二、课程简介 面向对象的程序设计是信息学院计算机科学与技术和软件工程专业的专业基础 必修课。主要任务是以Java语言为载体学习当今主流的、也是技术上最为成熟的面 向对象编程技术。通过学习JAVA语言中的数据类型,运算,语句结构及其程序设计 的基本方法及Java高级功能,使学生理解面向对象程序设计的基本概念和方法,并 掌握Java编程技术,进而利用所学的思想和技术解决一些应用问题。课程通过大量 的程序实例和练习,加深学生对面向对象的基本思想以及独立于操作平台、多任务 线程等概念的理解。这门课程是学习其他计算机及软件工程相关课程的基础,为学生 在后续专业课的学习过程中,应用面向对象的思想、方法和编程技术解决专业问题奠 定基础。 Object-oriented Programming is one of the professional basic courses of Computer Science and Technology,Software Engineering.The main task of it is to teach students the most promising object-oriented programming ideas by studying programming language-Java.In this course,students need study data types,operations,program structures,the basic methods of programming and advanced Java programming functions.And they should understand the basic concepts and methods of ob ject-oriented programming,master the java 1
1 《面向对象程序设计》课程教学大纲 一、课程基本信息 课程代码:16106904 课程名称:面向对象程序设计 英文名称:Object Oriented Programming 课程类别:专业必修课 学 时:64(其中实验课 20 学时) 学 分:4 适用对象: 软件工程、计算机科学与技术专业、电子商务专业本科 考核方式:考试 先修课程:C 语言程序设计 二、课程简介 面向对象的程序设计是信息学院计算机科学与技术和软件工程专业的专业基础 必修课。主要任务是以 Java 语言为载体学习当今主流的、也是技术上最为成熟的面 向对象编程技术。通过学习 JAVA 语言中的数据类型,运算,语句结构及其程序设计 的基本方法及 Java 高级功能,使学生理解面向对象程序设计的基本概念和方法,并 掌握 Java 编程技术,进而利用所学的思想和技术解决一些应用问题。课程通过大量 的程序实例和练习,加深学生对面向对象的基本思想以及独立于操作平台、多任务、 线程等概念的理解。这门课程是学习其他计算机及软件工程相关课程的基础,为学生 在后续专业课的学习过程中,应用面向对象的思想、方法和编程技术解决专业问题奠 定基础。 Object-oriented Programming is one of the professional basic courses of Computer Science and Technology, Software Engineering. The main task of it is to teach students the most promising object-oriented programming ideas by studying programming language-Java. In this course, students need study data types, operations, program structures, the basic methods of programming and advanced Java programming functions. And they should understand the basic concepts and methods of object-oriented programming, master the java
programming,then solve some practical problems with what they have learned. For making students master the object-oriented programming and some advanced concepts,such as multitask,thread and so on,it arranges many examples and exercises to further their understanding.At the same time,it is the basis of other subjects and it is helpful to study the follow-up courses and solve some professional problems. 三、课程性质与教学目的 面向对象的程序设计是计算机科学与技术专业、软件工程专业的专业必修课。本 课程的任务是使学生掌握Java程序设计语言,理解面向对象的程序设计的思路和方 法,培养学生的编程能力。通过融入思政元素的,激发学生对社会主义核心价值观的 认同感,培养学生诚实、守信、坚忍不拔的性格:提高学生在沟通表达、自我学习和 闭从协作方面的能力。 本课程的主要知识点群包括Java语言的面向对象技术、异常处理、输入输出流、 图形用户界面(GI)设计等。 1.专业技能目标 ①能运用面向对象程序设计的思想分析和设计类 ②会定义接口,并能有效组织类和接口: ③会使用Eclipse开发工具开发Java应用程序: ④能综合应用所学知识解决实际问题。 2.专业知识目标 ①会安装并配置典型的Java开发环境: ②能根据实际情况选择合适的数据类型进行信息的处理,会使用流程控制进行 简单程序的开发,会定义和使用数组解决实际问题: ③理解面向对象语言的开发理念,掌握Java编程思想与编程方式: ④掌握Java常用工具类: ⑤会选择合适的工具类来解决实际问题。 3.专业素质目标 ①具有良好的T职业道德、职业素养和职业规范: ②具有热爱科学、实事求是、严肃认真、一丝不苟、按时守信的工作作风: ③具有较强的自我更新知识和技能的能力: ④具有基本的阅读文档、编写程序文档的能力: 2
2 programming, then solve some practical problems with what they have learned. For making students master the object-oriented programming and some advanced concepts, such as multitask, thread and so on, it arranges many examples and exercises to further their understanding. At the same time, it is the basis of other subjects and it is helpful to study the follow-up courses and solve some professional problems. 三、课程性质与教学目的 面向对象的程序设计是计算机科学与技术专业、软件工程专业的专业必修课。本 课程的任务是使学生掌握 Java 程序设计语言,理解面向对象的程序设计的思路和方 法,培养学生的编程能力。通过融入思政元素的,激发学生对社会主义核心价值观的 认同感,培养学生诚实、守信、坚忍不拔的性格;提高学生在沟通表达、自我学习和 团队协作方面的能力。 本课程的主要知识点群包括 Java 语言的面向对象技术、异常处理、输入输出流、 图形用户界面(GUI)设计等。 1.专业技能目标 ① 能运用面向对象程序设计的思想分析和设计类; ② 会定义接口,并能有效组织类和接口; ③ 会使用 Eclipse 开发工具开发 Java 应用程序; ④ 能综合应用所学知识解决实际问题。 2. 专业知识目标 ① 会安装并配置典型的 Java 开发环境; ② 能根据实际情况选择合适的数据类型进行信息的处理,会使用流程控制进行 简单程序的开发,会定义和使用数组解决实际问题; ③ 理解面向对象语言的开发理念,掌握 Java 编程思想与编程方式; ④ 掌握 Java 常用工具类; ⑤ 会选择合适的工具类来解决实际问题。 3. 专业素质目标 ① 具有良好的 IT 职业道德、职业素养和职业规范; ② 具有热爱科学、实事求是、严肃认真、一丝不苟、按时守信的工作作风; ③ 具有较强的自我更新知识和技能的能力; ④ 具有基本的阅读文档、编写程序文档的能力;
⑤同时养成规范的编码习惯: ⑤具有良好的团队协作和创新能力。 四、教学内容及要求 第一章绪论 (一)目的与要求 L.了解Java技术的起源与发展 2.了解Java技术的特性及语法机制 3.了解Java技术的虚拟机概念 4,学握Java程序开发的基本过程 (二)教学内容 第一节Java的起源与发展 l.Java的发展历史 2.Java技术体系 3.软件定义未来 (1)软件行业发展前景: (2)新时代与个人成才的关系: (3)引发学生对未来的职业愿景,激发学生对社会主义核心价值观的 认同感。 第二节什么是Java技术 L.Java语言 2.Java平台 3.Java的特征 第三节Java语法机制概述 第四节Java的运行系统与JVW L.Java运行系统 2.Java虚拟机 第五节Java程序开发 1.Java API 2.JDK的下载、安装与使用 3.Java程序的编写与编译过程 4.Java开发工具 (三)思考与实践 L.比较Java语言与C、C+、C#语言的异同点 2.要求能正确地安装JDK、Eclipse等开发工具 3
3 ⑤同时养成规范的编码习惯; 具有良好的团队协作和创新能力。 四、教学内容及要求 第一章 绪论 (一) 目的与要求 1.了解 Java 技术的起源与发展 2.了解 Java 技术的特性及语法机制 3.了解 Java 技术的虚拟机概念 4.掌握 Java 程序开发的基本过程 (二) 教学内容 第一节 Java 的起源与发展 1.Java 的发展历史 2.Java 技术体系 3. 软件定义未来 (1)软件行业发展前景; (2)新时代与个人成才的关系; (3)引发学生对未来的职业愿景,激发学生对社会主义核心价值观的 认同感。 第二节 什么是 Java 技术 1.Java 语言 2.Java 平台 3.Java 的特征 第三节 Java 语法机制概述 第四节 Java 的运行系统与 JVM 1.Java 运行系统 2.Java 虚拟机 第五节 Java 程序开发 1.Java API 2.JDK 的下载、安装与使用 3.Java 程序的编写与编译过程 4.Java 开发工具 (三) 思考与实践 1.比较 Java 语言与 C、C++、C#语言的异同点 2.要求能正确地安装 JDK、Eclipse 等开发工具
3.利用上述的开发工具开发运行简单的Java程序 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论等 4.校园网B平台的面向对象程序设计课程网站 第二章面向对象程序设计基本概念 (一) 目的与要求 1.了解面向对象程序设计的基本思想和内涵 2.了解类、对象、封装、继承、多态等基本概念的意义 3.了解面向对象程序设计的一般方法 (二)教学内容 第一节面向对象程序设计方法概述 1.面向对象问题求解的基本思想 2.面向对象程序设计方法的内涵 第二节对象与类 1,对象的含义与结拉 2.对象之间的互操作 3.类的概念 4.基于类与对象的面向对象问题求解方法 第三节封装与数据隐藏 第四节继承 第五节多态 1.多态的含义 2.晚联编 第六节基于服务的面向对象程序设计思想 第七节面向对象程序设计的优势 (三)思考与实践 1.比较过程程序设计方法与面向对象程序设计方法的异同点 (四)教学方法与手段 1,课堂讲授、 多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 A
4 3.利用上述的开发工具开发运行简单的 Java 程序 (四) 教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论等 4.校园网 BB 平台的面向对象程序设计课程网站 第二章 面向对象程序设计基本概念 (一) 目的与要求 1. 了解面向对象程序设计的基本思想和内涵 2. 了解类、对象、封装、继承、多态等基本概念的意义 3. 了解面向对象程序设计的一般方法 (二) 教学内容 第一节 面向对象程序设计方法概述 1.面向对象问题求解的基本思想 2.面向对象程序设计方法的内涵 第二节 对象与类 1.对象的含义与结构 2.对象之间的互操作 3.类的概念 4.基于类与对象的面向对象问题求解方法 第三节 封装与数据隐藏 第四节 继承 第五节 多态 1.多态的含义 2.晚联编 第六节 基于服务的面向对象程序设计思想 第七节 面向对象程序设计的优势 (三)思考与实践 1.比较过程程序设计方法与面向对象程序设计方法的异同点 (四)教学方法与手段 1. 课堂讲授、多媒体演示 2. 课外作业 3. 课堂讨论 4. 上机实验等
第三章Java语言基础 (一)目的与要求 l.掌握Java语言的基本语法规则 2.掌握Java语言的程序流控制方法 3.掌握Iava语言的数组方法 (二)教学内容 第一节标识符与数据类型 1.Java基本语法 2.标识符 3.关键词 4.基本数据类型 5.复合数据类型 6.基本类型变量与引用类型变量 第二节表达式与语句 1.变量 2.运算符与表达式 3.语句 第三节程序流控制 1.while和do while语右 2.for语句 3.if/else语句 4.switch语句 5.循环跳转语句 第四节数组 1.数组的声明 2.数组的创建与初始化 3.多维数组 4.数组的复制 第五节编程行业规花 1.软件行业规范解析 2.让学生了解Java程序开发规范的重要性,培养学生的职业素质和道德 规范: 3.做事认真负责,一丝不苟,每一条语句都经过周密思考,书写规范, 培养学生的软件工匠精神。 5
5 第三章 Java 语言基础 (一)目的与要求 1. 掌握 Java 语言的基本语法规则 2. 掌握 Java 语言的程序流控制方法 3. 掌握 Java 语言的数组方法 (二)教学内容 第一节 标识符与数据类型 1.Java 基本语法 2.标识符 3.关键词 4.基本数据类型 5.复合数据类型 6.基本类型变量与引用类型变量 第二节 表达式与语句 1.变量 2.运算符与表达式 3.语句 第三节 程序流控制 1.while 和 do while 语句 2.for 语句 3.if/else 语句 4.switch 语句 5.循环跳转语句 第四节 数组 1.数组的声明 2.数组的创建与初始化 3.多维数组 4.数组的复制 第五节 编程行业规范 1.软件行业规范解析 2.让学生了解 Java 程序开发规范的重要性,培养学生的职业素质和道德 规范; 3.做事认真负责,一丝不苟,每一条语句都经过周密思考,书写规范, 培养学生的软件工匠精神
(三)思考与实践 l.试比较Java与C语言基本语法的异同点 2.在Eclipse环境下验证Java语言的基本语法约定 3.在Eclipse环境下验证Java语言的程序流控制方法和数组操作应用 方法 4.实验项目一:Java基础试验 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第四章Java面向对象特性 (一)目的与要求 l.了解Java中类和对象的基本概念 2.掌握Java类的定义方法 3.了解Java对象的生命周期过程 4.掌握Iava类的继承与多态 (二)教学内容 第一节概述 1.Java语言的0OP特性 2.Java中类和对象的基本概念 第二节类的定义 1.类的基本结构 2.成员变量 3.成员方法 4.方法重载 5.This 6.构造方法 第三节对象的生命周期 1.对象的创建 2.对象的使用 3.对象的清除 第四节类的继承与多态 1.类的继承 6
6 (三)思考与实践 1. 试比较 Java 与 C 语言基本语法的异同点 2. 在 Eclipse 环境下验证 Java 语言的基本语法约定 3. 在 Eclipse 环境下验证 Java 语言的程序流控制方法和数组操作应用 方法 4. 实验项目一:Java 基础试验 (四)教学方法与手段 1. 课堂讲授、多媒体演示 2. 课外作业 3. 课堂讨论 4. 上机实验等 第四章 Java 面向对象特性 (一)目的与要求 1. 了解 Java 中类和对象的基本概念 2. 掌握 Java 类的定义方法 3. 了解 Java 对象的生命周期过程 4. 掌握 Java 类的继承与多态 (二)教学内容 第一节 概述 1.Java 语言的 OOP 特性 2.Java 中类和对象的基本概念 第二节 类的定义 1.类的基本结构 2.成员变量 3.成员方法 4.方法重载 5.This 6.构造方法 第三节 对象的生命周期 1.对象的创建 2.对象的使用 3.对象的清除 第四节 类的继承与多态 1.类的继承
2.方法的重写(overriding) 3.运行时多态 (三)思考与实践 1.深入理解类和对象之间的关系,熟练掌握变量和方法的引用方法 2.举例说明this、super等关键字的作用 3.举例说明多态性的含义及实现机制 4.实验项目二:Java面向对象特性试验-Java中的类、对象和方法 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课微过论 4.上机实验等 第五章Java高级特征 (一)目的与要求 l.掌握static、final、abstract等关键词的使用方法 2.掌握接口的定义、实现与使用方法 3.掌握包定义与使用方法 4.掌握不同的访问控制方法 5.了解基本数据类型的句装类的使用方法 6.掌握对象类型转换的使用 (二)教学内容 第一节static关键词 1。类变量/静态变量 2.类方法/静态方法 3.静态初始化程序 第二节final关键词 第三节抽象类 1,什么是抽象类 2.抽象类的作用 第四节接口 1,什么是接口 2.接▣的定义 3.接口的实现与使用 4.多重继承 7
7 2.方法的重写(overriding) 3.运行时多态 (三)思考与实践 1. 深入理解类和对象之间的关系,熟练掌握变量和方法的引用方法 2. 举例说明 this、super 等关键字的作用 3. 举例说明多态性的含义及实现机制 4. 实验项目二:Java 面向对象特性试验--Java 中的类、对象和方法 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第五章 Java 高级特征 (一)目的与要求 1. 掌握 static、final、abstract 等关键词的使用方法 2. 掌握接口的定义、实现与使用方法 3. 掌握包定义与使用方法 4. 掌握不同的访问控制方法 5. 了解基本数据类型的包装类的使用方法 6. 掌握对象类型转换的使用 (二)教学内容 第一节 static 关键词 1.类变量/静态变量 2.类方法/静态方法 3.静态初始化程序 第二节 final 关键词 第三节 抽象类 1.什么是抽象类 2.抽象类的作用 第四节 接口 1.什么是接口 2.接口的定义 3.接口的实现与使用 4.多重继承
5.通过继承扩展接口 6.接口与抽象类 第五节包 1.什么是Java中的包 2.包的定义与使用 3.包名与包成员的存储位置 4.Java源文件与类文件的管理 第六节访问控制 1,访问控制概术 2.Private 3.Default 4.Protected 5.Public 第七节对象的类型转换 1对象上转型和类型强制转换 第八节中国大学生程序设计竞赛介绍 1.中国大学生程序设计竟竞赛、广东省大学生程序设计竞赛、全国大数据 技能竞赛、“蓝桥杯”介绍 2.我院竞赛获奖者经验分享 3.思政教育目的:提高学生自我学习和持续学习的意识和能力。 4.作业:搜集行业竞赛新闻分享 (三)思考与实践 1.举例说明类方法与实例方法,以及类变量与实例变量之间的区别 2.在Eclipse上实现static、final、abstract及访问控制等关键词的 使用方法 3.在Eclipse上举例说明接口的实现方法 4.在Eclipse上举例说明内部类的实现和使用方法 5.在Eclipse上用实例说明包的意义 6.实验项目三:类的继承、多态、接口、访问控制符与修饰符 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第六章Java资源及利用
8 5.通过继承扩展接口 6.接口与抽象类 第五节 包 1.什么是 Java 中的包 2.包的定义与使用 3.包名与包成员的存储位置 4.Java 源文件与类文件的管理 第六节 访问控制 1.访问控制概述 2.Private 3.Default 4.Protected 5.Public 第七节 对象的类型转换 1. 对象上转型和类型强制转换 第八节 中国大学生程序设计竞赛介绍 1. 中国大学生程序设计竞赛、广东省大学生程序设计竞赛、全国大数据 技能竞赛、“蓝桥杯”介绍 2. 我院竞赛获奖者经验分享 3. 思政教育目的:提高学生自我学习和持续学习的意识和能力。 4. 作业:搜集行业竞赛新闻分享 (三)思考与实践 1.举例说明类方法与实例方法,以及类变量与实例变量之间的区别 2.在 Eclipse 上实现 static、final、abstract 及访问控制等关键词的 使用方法 3.在 Eclipse 上举例说明接口的实现方法 4.在 Eclipse 上举例说明内部类的实现和使用方法 5.在 Eclipse 上用实例说明包的意义 6. 实验项目三:类的继承、多态、接口、访问控制符与修饰符 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第六章 Java 资源及利用
(一)目的与要求 l.熟悉java标准类库结构 2.掌握基本数据类型的封装类的使用 3.熟悉并掌握几个常用类的使用 (二)教学内容 第一节Java标准类库结构 第二节语言包 1.基本对象类 2.系统类 3.包装类 3.字符串类 4.数学类 第三节Java工具包(java.util) l.Calendar类 2.Random类 3.对象数组 (三)思考与实践 1.Java中标准类库的组织和作用,API的使用 2.基本数据类型的包装类功能更强 3.在Java资源库中,Object类处于什么位置? 4.实验项目四:Java资源及其使用 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第七章异常处理 (一)目的与要求 1.掌握异常处理一般方法 2.掌握自定义异常类的定义和使用方法 (二)教学内容 第一节异常的概念 第二节异常处理方法 1.捕获并处理异常 9
9 (一)目的与要求 1. 熟悉 java 标准类库结构 2. 掌握基本数据类型的封装类的使用 3. 熟悉并掌握几个常用类的使用 (二)教学内容 第一节 Java 标准类库结构 第二节 语言包 1.基本对象类 2.系统类 3.包装类 3.字符串类 4. 数学类 第三节 Java 工具包(java.util) 1. Calendar 类 2. Random 类 3. 对象数组 (三)思考与实践 1. Java 中标准类库的组织和作用,API 的使用 2. 基本数据类型的包装类功能更强 3. 在 Java 资源库中,Object 类处于什么位置? 4.实验项目四:Java 资源及其使用 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第七章 异常处理 (一)目的与要求 1. 掌握异常处理一般方法 2. 掌握自定义异常类的定义和使用方法 (二)教学内容 第一节 异常的概念 第二节 异常处理方法 1. 捕获并处理异常
2.将方法中产生的异常抛出 第三节自定义异常类 1.自定义异常类的必要性与原则 2.自定义异常类与Java异常类的融合 3.自定义异常类的定义与使用 (三)思考与实践 1.Java中的异常处理主要处理哪些类型的异常? 2.用户程序如何自定义异常? 3.在Ec1iDse上举例说明异常处理的实现方式 4.实验项目五:Java语言的异常处理 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第八章输入/输出 (一)目的与要求 1.掌握Java的流式输入/输出实现方式 2.掌握Java的文件操作方式 (二)教学内容 第一节流的概念 1.流 2.java.io包 第二节输入流和输出流 l.InputStream类 2.FileInputStream类 3.OutputStream类 4.Printstream类 5.标准输入输出流的重定向 第三节文件 1.创建File对象 2.操纵下ile对象 第四节文件输入流和输出流 第五节内存中的输入/输出流一缓冲流 10
10 2. 将方法中产生的异常抛出 第三节 自定义异常类 1. 自定义异常类的必要性与原则 2. 自定义异常类与 Java 异常类的融合 3. 自定义异常类的定义与使用 (三)思考与实践 1. Java 中的异常处理主要处理哪些类型的异常? 2. 用户程序如何自定义异常? 3. 在 Eclipse 上举例说明异常处理的实现方式 4.实验项目五:Java 语言的异常处理 (四)教学方法与手段 1.课堂讲授、多媒体演示 2.课外作业 3.课堂讨论 4.上机实验等 第八章 输入/输出 (一)目的与要求 1. 掌握 Java 的流式输入/输出实现方式 2. 掌握 Java 的文件操作方式 (二)教学内容 第一节 流的概念 1. 流 2. java.io 包 第二节 输入流和输出流 1. InputStream 类 2. FileInputStream 类 3. OutputStream 类 4. PrintStream 类 5. 标准输入输出流的重定向 第三节 文件 1. 创建 File 对象 2. 操纵 File 对象 第四节 文件输入流和输出流 第五节 内存中的输入/输出流—缓冲流