教案-第7章 类与对象(学时)_第1页
教案-第7章 类与对象(学时)_第2页
教案-第7章 类与对象(学时)_第3页
教案-第7章 类与对象(学时)_第4页
教案-第7章 类与对象(学时)_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ADDINCNKISM.UserStyle教案首页课序12学时2周次教学内容第7章类和对象(类与对象、封装、构造/析构)教学目标知识理解面向对象思想,掌握类、对象的概念以及二者关系;掌握类的组成:属性(成员变量)、方法(成员方法);理解封装思想,掌握私有属性、公有属性的区别;掌握构造方法__init__、析构方法__del__的执行机制;掌握property属性,实现属性安全访问与修改。能力具备自主定义类、创建实例对象、调用属性和方法的编码能力;能够区分构造方法与析构方法的触发时机;能够使用私有属性+property完成属性封装,规范数据访问;具备简单面向对象建模能力,能够描述生活事物特征与行为。素养培养学生面向对象的抽象思维,学会提取事物特征与行为;培养代码规范意识、数据安全意识,理解封装的设计思想;培养模块化编程思维,为后续继承、多态、项目开发打下基础。教学重点类的定义格式、对象创建方式、属性与方法调用;构造方法的作用、语法以及自动执行机制;封装思想:私有属性隐藏、方法对外开放;property属性的使用方法。教学难点理解类是模板、对象是实例的抽象关系;析构方法触发时机、内存回收机制;私有属性的访问限制、property装饰器封装原理。教学方法手段讲授法、类比教学法、案例驱动法、演示实操法、任务互动法。教学组织方式内容导入知识讲解互动测验本节小结布置作业课后反思教学环节课程引入新课讲解课堂讨论每课小结布置作业时间分配(以分钟计算)575532(以2课时为单元)教学设计内容导入以“手机”为例,手机有品牌、价格、颜色(属性),可以打电话、拍照(方法)。多款手机结构一致,如何批量描述同一类事物?二、内容讲解(一)类和对象的创建1.概念讲解类是抽象模板,包含属性和方法;对象是类的实例。语法讲解:class定义类,格式规范、缩进要求。属性:描述事物特征;方法:描述事物行为。代码演示:定义学生类,创建学生对象,调用属性和方法。(二)封装(属性、方法、私有属性)1.概念讲解封装概念:隐藏内部数据,对外提供安全访问接口,保护数据。讲解公有属性、私有属性:单下划线、双下划线私有属性。说明私有属性外部不能直接修改,提高数据安全性。2.演示代码定义私有属性,对比公有、私有访问区别。(三)构造方法与析构方法1.概念讲解构造方法:__init__,创建对象时自动执行,用于初始化属性。析构方法:__del__,对象销毁、内存释放时自动执行。对比讲解:构造出生、析构销毁,通俗易懂。2.代码演示:观察两个方法自动执行顺序。(四)property属性(6分钟)1.概念讲解提出问题:私有属性不能直接修改,如何安全赋值、取值?讲解property作用:将方法伪装成属性,实现优雅读取、修改私有数据。语法演示:@property获取属性、@属性名.setter修改属性。优势:可以在修改数据时添加判断条件,过滤非法数据。2.代码演示(五)案例互动设计综合案例:设计学生类,包含姓名、年龄(私有属性)。要求:构造方法初始化、age使用property封装、限制年龄合法范围。课堂提问:什么情况下执行构造方法?私有属性能否直接外部修改?演示代码运行,观察构造、析构执行顺序,展示非法数据拦截效果。#学生类:演示封装、构造、析构、propertyclassStudent:#构造方法:创建对象自动执行def__init__(self,name,age):=name#公有属性self.__age=age#私有属性print("构造方法执行:学生对象创建成功")#property:读取私有年龄@propertydefage(self):returnself.__age#setter:修改私有年龄,添加数据判断@age.setterdefage(self,value):if0<value<150:self.__age=valueelse:print("年龄输入不合法!")#自定义方法defshow_info(self):print(f"姓名:{},年龄:{self.__age}")#析构方法:对象销毁自动执行def__del__(self):print("析构方法执行:对象内存释放")#创建对象(触发构造方法)stu=Student("张三",20)stu.show_info()#通过property修改私有属性stu.age=25stu.show_info()#非法赋值,被拦截stu.age=-10#手动销毁对象(触发析构方法delstu三、课堂小结总结核心知识点:类是模板、对象是实例;属性存数据、方法存行为。封装:私有属性保护数据,property安全访问。构造方法初始化、析构方法回收内存,均为自动执行。强调编码规范:私有属性双下划线、装饰器固定写法。四、布置作业基础作业:自定义手机类,包含品牌、价格(私有),使用构造方法初始化。实操作业:使用property完成价格修改,限制价格大于0。思考题:构造方法和析构方法的区别?封装的好处是什么?预习作业:预习继承的概念与简单实现。课堂组织【教师活动】生活类比导入、提出问题、引出概念、教学目标【学生活动】跟随教师举例,理解模板与个体区别。记录本节课学习任务,建立面向对象初步认知。ADDINCNKISM.UserStyle教案首页课序13学时2周次教学内容第7章类和对象(继承和多态)教学目标知识理解继承的概念、作用,掌握父类、子类关系;掌握单继承语法、代码复用特点;理解多继承定义,掌握多继承优先级与调用规则;理解多态思想,掌握方法重写、统一调用不同子类方法。能力能够独立编写单继承、多继承代码,实现代码复用;能够完成子类方法重写,实现多态效果;能够分析类之间继承关系,判断方法执行优先级;具备面向对象综合建模能力。素养培养代码复用思维,减少冗余代码,养成简洁编程习惯;培养抽象建模思维,学会抽取公共父类、划分子类。教学重点单继承语法、子类继承父类属性和方法;方法重写的格式与使用场景;多态实现方式:父类指向子类对象,统一调用。教学难点1.多继承中方法查找顺序(MRO优先级)理解。2.多态底层逻辑,不同子类执行不同重写方法。教学方法手段讲授法、类比教学法、案例驱动法、演示实操法、任务互动法。教学组织方式内容导入知识讲解互动测验本节小结布置作业课后反思教学环节课程引入新课讲解课堂讨论每课小结布置作业时间分配(以分钟计算)575532教学设计内容导入人类拥有姓名、年龄、吃饭、睡觉;学生、教师属于人类的衍生,拥有人类全部特征,还具备独有特征。重复写相似类会造成代码冗余,如何简化代码?二、内容讲解(一)单继承1.概念讲解单继承指一个子类只继承一个父类,父类存放公共属性和方法,子类独有扩展。语法格式:class子类名(父类名)。子类自动拥有父类所有非私有属性和方法,实现代码复用。2.代码演示定义动物父类,狗子类继承动物类,调用父类方法。(二)多继承1.概念讲解一个子类同时继承多个父类,拥有多个父类的属性和方法。语法格式:class子类(父类1,父类2)。多继承存在优先级,优先继承左侧父类同名方法。2.演示代码学生类同时继承人类、学习者类,观察方法执行顺序。(三)多态1.概念讲解通俗定义:同一行为,不同对象表现不同形态。实现条件:存在继承关系、子类重写父类方法、父类指向子类对象。讲解方法重写:子类定义与父类同名方法,覆盖父类逻辑。优势:代码简洁、扩展性强,新增子类无需修改原有代码。2.代码演示动物发声案例,猫、狗重写叫声方法,统一调用实现多态(四)案例互动设计采用员工薪资综合案例,串联:封装、单继承、多继承、多态。案例结构:通用员工父类→全职员工、兼职员工子类(单继承);员工+技能类(多继承)。不同员工重写薪资计算方法,实现多态效果。课堂提问:哪一部分是继承?哪一部分实现多态?为什么要抽取父类?逐行讲解代码逻辑,演示运行结果,对比不同员工薪资差异。#学生类:演示封装、构造、析构、property#父类1:员工类classEmployee:def__init__(self,name,base_salary):=nameself.__base_salary=base_salary#封装私有属性#通用薪资方法defget_salary(self):returnself.__base_salary#父类2:技能类(用于多继承)classSkill:defshow_skill(self):print("员工具备专业工作技能")#子类:全职员工(单继承+方法重写)classFullEmployee(Employee,Skill):defget_salary(self):#底薪+绩效returnsuper().get_salary()+2000#子类:兼职员工(单继承+方法重写)classPartEmployee(Employee,Skill):defget_salary(self):#仅结算部分工资returnsuper().get_salary()*0.5#多态调用:统一接口,不同实现defcount_money(emp):print(f"{}薪资:{emp.get_salary()}")#创建对象emp1=FullEmployee("张三",4000)emp2=PartEmployee("李四",4000)#多态执行count_money(emp1)count_money(emp2)#调用多继承父类方法emp1.show_skill()三、课堂小结知识点总结:单继承复用代码、多继承多类扩展、重写改写方法、多态统一调用。核心口诀:继承复用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论