《面向对象程序设计》授课计划2023-2024-02

面向对象程序设计授课计划

可参照此计划,在课前预习。( 待完善

授课内容

课本章节

PPT(课堂)

PPT

(课本配套)

课程介绍

课程要求

编程语言

面向对象简介

C++简介

实验环境

CH1

OOP00-BeforeTheClassStarts

CPP01-绪论

从C到C++

1 Namespaces

名称空间

CH 2.1.3

CH5.6.3

CH10.1.2

OOP01-FromCToCPP1

CPP02-简单程序设计

CPP05-数据的共享与保护

CPP10-泛型程序设计与C++标准模板库

CPP11-流类库与输入输出

CPP06-数组 指针与字符串

2 C++ Input/Output

C++输入与输出

CH2.3

3 Files

文件

CH11

4 C++ Features

C++特征(类型转换、布尔类型、枚举类型、结构体)

CH 2.2

CH2.5

5 The Type string

string类型

CH2.2

CH6.5

6 函数原型、引用、内联函数、缺省参数、函数重载。

CH3

OOP02-FromCToCPP2

CPP03-函数

1 structure

结构体

CH2.5

OOP03-Structure

CPP02-简单程序设计

2. class and object

类与对象

3、Data Sharing

数据共享与保护

4、Efficiency and Robustness issues for classes and objects

类与对象的效率与健状性

5、Class Data Members and Methods

类数据成员与类成员函数

CH1

CH4

CH5

OOP04-OOPOverview

OOP05-Classes

OOP06-this

OOP07-ConstructorDes

OOP08-const&static [2019.04添加]

OOP08-MoreOnMembers[2020.03改增]

CPP01-绪论

CPP04-类与对象

CPP05-数据的共享与保护

数组、指针、字符串

CH6

OOP09-Pointer

CPP06-数组 指针与字符串

继承

CH7

OOP10-Inheritance1

OOP11-inheritance2

CPP07-继承与派生

多态

多态

运算符重载

CH8

OOP12-Polymorphism1

OOP13-Polymorphism2

OOP14-OperratorOverloading

OOP15-friend

OOP16-UMLOverview

OOP16-附1-UML案例-书籍管理 [2019.05添加]

OOP16--附1UML案例-银行系统[2019.05添加]

CPP08-多态性

集合与泛型

CH9

CH10

OOP17-Templates

CPP09-群体类和群体数据的组织

CPP10-泛型程序设计与C++标准模板库

异常

CH12

OOP18-Exception

CPP12-异常处理

OOP19-Last

光荣榜 (Honor Roll)

序号

(Number)

姓名

(Name)

加分时间

(Time)

加分原因

(Reason)

加分人

(Recorder)

1

徐海栋

05/03/2022

发现OOP10-Inheritance1中,调整访问属性的例子存在问题。

2

翟秀麟

计科222

04/11/2024

发现了在返回对象时,不调用copy构造函数的问题。

在GCC 中与下面参数有关:-fno-elide-constructors

3

4

5

6

7

  • 19
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C++程序设计课程配套课件,西北工业大学-中国大学mooc平台课程,PPT很不错。 程序设计课程是大学计算机基础教育和计算机科学与技术专业基础的核心课程,是数据结构、算法设计、数学建模、软件技术等课程的前导课程。程序设计课程的教学目标是使学生能够使用一种开发工具熟练的进行软件开发,为学生将来的创新实验、毕业设计、科学研究提供了有力的技术支持。 C++是国内外广泛使用的计算机程序设计语言。其功能强大、面向对象、数据表示丰富、代码运行效率高、可移植性好,适合编写系统软件和各类应用程序。在TIOBE排行榜上,C++语言多年来始终处于前五位。学习程序设计C++入手,对于培养利用计算机求解现实问题的计算思维能力具有其他语言无法比拟的有点。且在完全掌握了C++语言之后,再学习其他程序设计语言就会轻车熟路了。 C是C++的子集,因此在C++授课中,有至少一半的内容是和C语言一样的。而国内C++程序设计课程的学时普遍较少,且讲授的重点一般都放在和C重叠的那一部分。对于C++比C多出来的内容往往只介绍类、继承等基本概念,而对于重载、多态、异常处理、数据流等内容言之甚少。本课程即针对这一问题,增加了C++独有的内容的比重,不但适用于在校大学生,且适用于工作中使用C++进行软件开发的人。
、Person类的多态性设计。 设计一个Person类,其中包含一个方法pay(),计算工资支出。再从Person类派生出助教类(Assistant)、讲师类(Instructor)、副教授类(AssistantProfessor)和教授类(Professor)。其中:工资支出=基本工资+授课时数teachingHours*每课时课金。 助教基本工资为800元,每课时课金25元;讲师基本工资为1000元,每课时课金35元;副教授基本工资为1200元,每课时课金40元;教授基本工资为1400元,每课时课金50元;在主方法中显示各人员的工资支出。用以下两种方式实现: ○1将Person类设计为抽象类,pay()为抽象方法,设计程序实现多态性。 ○2将Person类设计为接口,设计程序实现多态性。 提示:设置授课时数teachingHours为成员变量,计算工资支出为成员方法,考虑是否定义构造方法。 2、编写一个Java程序,在程序中定义一个接口Achievement,其中有一个计算平均分的抽象方法avg();定义一个父类Person,其中有数据成员:姓名name和年龄age,构造方法初始化数据成员name和age,重写toString()方法显示成员信息;定义一个子类Student继承类Person并实现接口Achievement,增加数据成员:语文成绩chnScore、数学成绩mathScore和英语成绩engScore,增加设置三门课成绩的setScore()方法,并实现接口Achievement的计算平均分的抽象方法avg(),主函数中测试,部分代码如下所示: Student s=new Student(“张三”,16); //创建子类对象 System.out.println(s.toString()); //显示s的个人信息,调用继承父类的toString方法 s.setScore(80,88,95); //设置三门课的成绩 System.out.printf(“三门课的平均分:%.2f”, s.avg()); //显示对象s的三门课的平均分 输出结果如下: 姓名:张三,年龄:16 三门课的平均分:87.67 3、编写一个Java程序,在程序中定义一个School类,在School类中定义一个内部类Student,分别创建这两个类的对象,访问各个对象中的方法,其中: School类: 数据成员:学院名称schoolName; 成员方法:显示信息方法showSchoolMsg():在方法中创建内部类Student的对象,并显示该对象的信息(调用内部类Student的显示信息的成员方法)。 Student类: 数据成员:姓名sname,年龄sage; 构造方法,初始化姓名sname、年龄sage以及所属学院名(即外部类数据成员:学院名称schoolName); 成员方法:显示信息showStudentMsg(),显示的信息包括:姓名、年龄以及所属学院名。 主函数中测试,部分代码如下所示: …… // 创建外部类School的对象 …… // 通过外部类对象调用其显示信息的方法showSchoolMsg() System.out.println(“-------------我是华丽的分割线-------------”); …… // 创建内部类Student的对象 …… // 通过内部类对象调用其显示信息的方法showStudentMsg()
面向对象程序设计java)》课程整体教学设计 《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第1页。《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第1页。 《面向对象程序设计(Java)》课程整体教学设计 《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第1页。 《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第1页。 面向对象程序设计—课程整体教学设计 课程整体教学设计 一、课程基本信息 课程名称:面向对象程序设计 课程代码: 学分:6 学时:96+30 授课时间:第一/二学期 授课对象:计算机类专业 课程类型: 本课程是为计算机类专业学生开设的一门专业基础课。 并行课程:数据库设计与应用 后续课程: :《JSP动态网站设计开发》、《安卓手机应用开发》 二、课程概述 课程定位 《面向对象程序设计》是计算机类专业的核心课程之一,也是基础课程之一, 在整个课程体系中起专业基础技能训练功能,它的后续课程是《JSP动态网站设计开发》、《安卓手机应用开发》等。本课程主要介绍了Java 语言的功能和特点,主要内容包括:Java 语言基础知识,Java 语法构成,面向对象编程技术,常用系统类使用,图形用户界面设计,图形处理,多媒体处理,异常处理,文件和流处理,多线程技术等,目的是使学生掌握一门高级程序设计语言,了解程序设计方法,具有基本的程序设计的能力。 《面向对象程序设计》是一门实践性很强的课。Java 语《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第2页。《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第2页。言作为一门经典的面向对象高级程序设计语言, 在课程的设计和实施中注重学生程序设计实践能力的培养。 对于所有的知识点和技能点,大体分为三个层次:了解、掌握和熟练掌握。它们的含义大致为:了解就是掌握概念,掌握就是能够理解和分析现有知识,熟练掌握就是会运用所学知识解决实际问题。 1 面向对象程序设计—课程整体教学设计 先修后续课程 并行课程《数据库设计与应用》,后续课程《JSP动态网站设计开发》、《安卓手机应用开发》。 三、课程目标 总体目标: 通过学习Java语言 的面向对象程序设计思想和实际应用技术,使学生养成良好的编程习惯,理解Java技术的编程理念,掌握使用Java语言的编程方法,具备 Java 技术再学习能力;能够具有分析用户需求、确定微型项目的开发流程,最终可以发布有一定实用价值的软件作品并撰写项目工程技术文档的能力;在项目训练过程中通过增长知识、训练技能、积累经验、养成习惯、固化能力,使学生初步具备分析、解决实际工程问题的能力,同时具备团队协作精神、创新能力,为后续专业课的学习打下良好的基础。 《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第3页。《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第3页。 能力目标: 第一阶段:语言基本功训练。通过完成小黄人动起来、四则运算机、颁奖典礼、ATM取款机、汽车出租管理等算法程序,使学生能够熟练运用Eclipse开发环境,能够掌握Java的基本语法和程序控制语句,能够严格遵守Java编程规范,解决简单的算法问题。 第二阶段:实用程序开发。通过完成我爱追星、门禁系统、成绩管理、跑步比赛、键盘游戏图形界面程序,使学生能够熟深入理解面向对象的基本概念,熟练运用GUI、多线程、集合、JDBC等java编程技术,熟练运用面向对象程序设计的编程思想开发微型mis程序。 第三阶段:综合项目开发。通过完成课程设计任务,训练学生处理小组事务的能力、计划安排工作的能力、与人沟通的能力、自我表达的能力、团队协作的能力、自我展示的能力、自我学习的能力。并且能够在学习与制作的过程中充分发挥自己的创造性与创意。 知识目标: 1. 掌握Java平台开发环境的搭建与配置,熟练掌握Java的开发平台和开 发软件包,熟悉各种参数设置及利用其进行程序开发的方法; 2 《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第4页。《面向对象程序设计java)》课程整体教学设计全文共21页,当前为第4页。 面向对象程序设计—课程整体教学设计 2. 掌握Java的基本语法、流程控制语句的基本语法、Java数组的创建与 使用方法; 3. 掌握Java类的概念、定义及创建类对象的方法,掌握面向对象编程的 基本方法、类的定义和对象创建、方法重载的概念、类的继承概念、多态的概念、理解抽象类与接口的相关概念等相关概念。 4. 掌握Java图形界面程序的基本结构、Java布局管理器的使用和各种布 局管理的风格、常用组件的使用、Java事件处理机制及相关的知识,学会事件
计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。课堂教学计划表 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第1页。 课程名称 Java程序设计 教师姓名 专业班级 授课时间 授课地点 学时数 8 授课题目 §2Java语言开发基础 教学目标及要求 知识目标 掌握Java语言的基本组成; :・掌握数据类型、变量、运算符及表达式; :・掌握三种控制结构; 技能目标 :・培养学生规范编码和良好的程序设计风格; :・能够应用Java语言进行程序设计; 数据类型、运算符、字符串、数组等知识在编程过程中能熟练、准确应用; ・:・能熟练、准确地应用分支、循环、跳转三种流程执行过程; 教学重点 :・标识符命名规那么、数据类型与运算符; : 嵌套ifelse语句的用法; 教学难点 :・数值类型转换(强制转换、隐式转换)的用法; :・Switch语句的用法; 工程描述 :・工程1:猜数字游戏 教学方法 问题导引法:通过给学生提出实际编程中出现的问题来引入教学内容,使学生在主动分析、讨论和解决问题的过程中掌握所学知识; :・案例分析法:通过演示典型案例来讲解相关知识和技术的具体使用过程,使学生在具体的应用环境中加深对概念的理解; :・任务驱动法:通过完成工程中的各个任务逐步增强实版技能; 教学过程设计 一、新课导入与工程展示 :・首先通过提问、讨论等互动的形式引入课程新知识; : 然后通过演示本章工程来激发学生的学习兴趣,增强学生学习的积极性、主动性; 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。教案正文 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第2页。 二、工程任务分解 ・:・带着学生分析本章工程并对工程进行任务分解,各工程分解任务如下: 工程1:猜数字游戏 ,任务1:确定变量 /任务2:选择数据类型 /任务3:确定表达式 /任务4:循环猜数,并统计次数 三、任务分析 :・根据工程及任务的描述和要求,对工程的各个任务进行分析,然后总结出完成该任务所需要的知识、技能和主要操作步骤; 四、相关知识点 :・针对各个任务分析阶段得到的知识和技能,并结合本章知识和技能目标对相关知识点进行详细讲解和说明; 五、任务实施 :・该阶段以完成各个任务为目的,教师利用相关知识和技能以演示的方式为学生详细讲解每个任务的完整实现过程; :・同时,该阶段要求学生进行跟随练习,以加深对知识和技能的理解和掌握; 六、技能拓展 :・在保证学生掌握了各个任务所涉及的基本知识和技能的基础上,再通过介绍一定的附加知识并辅导学生完成指定的"技能拓展任务",最终使学生对所学知识到达举一反三,融会贯通的学习目的; 七、指导与评价 对学生的任务实施过程进行指导,并对其中出现的问题进行总结,给出评价; 课后作业 :・完成课后相关习题; 课后分析 :・主要问题: 面向对象思、想的培养; 一、新课导入与工程展示思考:回顾C语言学过的基本语法知识? 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。运行各个源程序,为学生演示本章工程各个任务的实现效果。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。 二、工程任务分解本章工程可以划分为以下主要任务: 工程1:猜数字游戏任务1:确定变量任务2:选择数据类型任务3:确定表达式 任务4:循环猜数,并统计次数 三、任务1・1:确定变量 任务分析 猜数游戏中需要计算机产生随机数,还需要用户输入猜测的数字。 本任务就是要确定用哪些变量来保存这些数据,并且如何命名变量。 相关知识点 (1)标识符 Java中的包名、类名、方法名、参数名、变量名等都需要用一个符号来标识,这个符号就称为标识符,java中标识符的命名规那么如下: 组成:可由大小写字母、数字、下划夜(_)和美元符号($) 组成。 开头:必须以字母、下划线或美元符号($)开头。 字母:严格区分字母

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值