还剩3页未读,继续阅读
文本内容:
人工智能与大数据学院人工程序设计教案n26教学标题项目7面向对象编程任务4抽象类和抽象方法、运算符重载授课班级云计算2101课时2场地4403时间2022年5月26日星期四授课教师李力
1.抽象类可以将设计和实现分离,你写你的抽象类,我写我的实现方法这也是为什么说抽象方法必须被继承才有意义!L项目/任务价值
2.运算符重载可以为类重新定义常用的操作符,如部分算术运算和比较运算、下标访问、长度检测等知识目标
1.了解抽象类和抽象方法的概念
2.了解运算符重载魔法函数的概念能力目标
1.掌握抽象类和抽象方法的定义
2.掌握抽象类与实现类的应用
2.学习目标
3.掌握运算符重载方法的定义和使用思政-素质目标
1.线上线下结合,引导学习方式,培养自主学习能力
2.培养学生积极探索、勇于创新的科学素养;教学设计
3.养成小组沟通协作共同学习,解决问题能力和团队合作精神;
4.能按照实训6s管理要求做好课前的准备,课后的整理工作,培养勤俭、奋斗、创新、奉献的劳动精神;
1.任务描述
3.学习内容
2.知识准备抽象类、运算符重载
3.任务实施抽象类和抽象方法的实际案例、在链表中利用运算符重载方法实现下标访问、长度检测等重庆在线开放课程平台《Python开发技术应用》,多媒体课件,理实-一体化实训室,网络教学资源,www.pythontutor,com可视
4.学习资源化工具、www.processor!,com在线流程图绘制工具实物教材,软件工具包教学重点抽象类的应用、运算符重载方法教学难点在链表中使用运算符重载方法在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包学情分析含足够的信息来描绘一个具体的对象,这样的类就是抽象类教学方法训练与练习法;情境教学法教学模式采用线上线下混合教学模式介绍抽象类的概念和语法细节、介绍运算符重载教学策略本次课教学流程讲解抽象类的概念、常用情景演示抽象类和抽象方法的使用,演示如何为抽象类编写实现类讲解运算符重载的概念演示常用的几个运算符重载方法时间分教学环节学生、教师活动教学方法、手段及思政设计配课程导学在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不介绍抽象类的概念,介绍抽象类在多媒体演示3是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的大型项目中的作用信息调研对象,这样的类就是抽象类讲授、讨论、案例教学课前发布导学单,线上线下结合,引导学习方式转变,培养自主学习能力小组协作、沟通、互助学习,培教学实施过程育团队合作意识,引导学生大胆表达引入项目学习任务和目标多媒体演示
21.讲解抽象类的语法规则,学生创任务1抽象类启发式教学建抽象类“几何图形”,抽象类讲解抽象类的概念、作用、语法细节小组作品展示和讲解有抽象方法“计算面积”,然后工作内容再创建实现类,如矩形、圆形等,
1.什么是抽象类和抽象方法在实现类中实现抽象方法
2.抽象类的语法规则和细节任务2运算符重载
2.讲解运算符重载的概念,在单讲解运算符重载的概念,编写运算符重载方法实现特定功能链表中利用运算符重载方法,工作内容
1.什么是运算符重我方法,有哪些运算符可以重载?将链表类包装成一个新的数据类
2.在链表中实现加法、乘法、下标访问、下标赋值、下标删除等功能型学生按要求完成链表包装的练习任务实施思考并答题多媒体演示45任务1抽象类在其他一些面向对象语言中,例启发式教学如Java,纯抽象的类,叫做接主体内容口,大家能理解该语法功能为什思政设计运算符重载能让步骤1什么是抽象类和抽象方法么叫这个名称吗?和现实中的下游程序员更方便使用你的抽象类中的方法是抽象方法,只有定义,没有实现,这些方法将会由子类去实现物理接口有什么关系?代码,让程序更好用是程序站在子类的角度,抽象类中的抽象方法就是需要遵守的规范员的基本职业素养抽象类是一种用于定义规范的手段,多用于协作开发时,由不同的人为抽象类创建不同的实现类以及各种方法抽象类能降低程序的耦合性步骤2抽象类的语法规则和细节抽象类通过指定元类为abc.ABCMeta来定义abc是abstractclass basesclass的缩写元类是定义类的类默认的元类是type可以通过下面的方法可以查看»class Studentmetaclass=type:…pass»type Studentclasstype»import abc»class Studentmetaclass=abc.ABCMeta:…pass»typo Studentclassabc.ABCMeta在抽象类中使用装饰器@2^.abstractclass定义抽象方法import abc#指定当前类为抽象类class Studentmetaclass=abc.ABCMeta:#将下一行定义的方法指定为抽象方法©abc.abstractmethoddef setNameself:pass#因为没有指定它不是抽象方法def setAgeself:@abc.abstractmethod,passclass SeniorStudentStudent:def setNameself,name:self.name=name任务2运算符重载主体内容步骤1什么是运算符重载运算符重载方法,乂称为魔法函数是指在方法中拦截内建的操作符,并重新定义这些操作符的作用当使用这些运算符来操作类对象的时候,会自动调用对应的重载办法换言之,只要在类中实现了相关的操作函数,就能代替对应的操作符所有的Python表达式的操作符都可以被重载方施6方拉6■作■网式••3一■«♦y i一,哓一•■•V..tetattr..JBfH牌K.undefined—31一■*•r_contain__KCJU inAUt/«/r•一拿4加••,.-cr«u.■I_“ttte_xlifyvalue一8一1*1y拿号前94tlakey__・__•••1•■,•y,«••y_gettlice_tan:stopIt«・•K!•y一”“一谩代■•一r•Kya■y_l*n_KjrtU!Unih布尔0一“J IT£DR小printK一c・__ttMn M*•y.ay一”一字而且示■ISSCM1E♦•步骤2在链表中通过运算符重载实现有效的内置操作对单链表实现以下操作加法链表a和b拼接乘法链表a重复n次拼接支持索引访问、赋值和修改支持切片支持直接打印链表对象,显示所有元素支持长度检测和布尔测试支持迭代器操作深化小组讨论多媒体演示讨论教学13启发性探讨如果不使用abc模块能否实现抽象类?A对一个类实现了运算符重载方法,在其他类中有效吗?总结小组总结引导同学总结抢答
51.抽象类和抽象方法互动教学
2.运算符重载任务多媒体
201.设计一个抽象类(平面几何图形),带有抽象方法(计算面积),再为它设计几个实现类,例如矩形、圆形
2.设计一个平面坐标类,并实现减法的运算符重载方法,两个坐标对象直接相减能计算出两点之间距离小组评价和个人综合评价(课堂讨论的参与、是否认真笔记)2学业评价补充教学反思教学反思主要问题解决办法本次课的做得好的地方。
个人认证
优秀文档
获得点赞 0