收藏 分销(赏)

第十次课-面向对象(下)教学课件-.ppt

上传人:天**** 文档编号:10267110 上传时间:2025-05-08 格式:PPT 页数:27 大小:1.83MB 下载积分:10 金币
下载 相关 举报
第十次课-面向对象(下)教学课件-.ppt_第1页
第1页 / 共27页
第十次课-面向对象(下)教学课件-.ppt_第2页
第2页 / 共27页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,任务八 面向对象编程(下),封装,继承,多态,类属性和实例属性,类方法和静态方法,了解,掌握,掌握,掌握,学习目标,了解,如何使用封装保护属性,1,2,掌握,单继承和多继承的使用,掌握多态,的使用,3,4,了解类属性和实例属性,类方法和静态方法的使用,01,封装,02,继承,03,多态,目录页,04,类属性和实例属性,05,类方法和静态方法,过渡页,01,封装,02,继承,03,多态,04,类属性和实例属性,05,类方法和静态方法,01,封装,class Person:,def _init_(self,name,age):,self.name=name,self.age=age,laowang=Person(“,老王,”,30),laowang.age=300,print(laowang.age),封装,人的年龄可以随便设置,显然不可行,。,封装,为了保护类里面的属性,可以采用如下方式解决:,1.,把属性定义为私有属性,,即在属性名的前面加上两个下划线;,2.,添加用于设置或获取属性值的两个方法,供外界调用。,过渡页,01,封装,02,继承,03,多态,04,类属性和实例属性,05,类方法和静态方法,02,继承,单继承,在现实生活中,,继承一般指的是子女继承父辈的财产,。,在程序中,继承描述的是事物之间的所属关系,。,单继承,类的继承,是指在一个现有类的基础上构建一个新的类,构建出来的新类被称作子类。,波斯猫和巴厘猫都继承自猫,而沙皮狗和斑点狗都继承狗。,单继承,Python,程序中,继承使用如下语法格式标注:,class,子类名,(,父类名,),:,假设有一个类为,A,,,A,派生出来了子类,B,,示例如下:,class B(A),:,class A(,object,),:,默认是继承自,object,的,多继承,现实生活中,一个派生类往往会有多个基类,。,比如沙发床是沙发和床的功能的组合,,,这都是,多重继承,的体现。,多继承,Python,支持多继承,,多继承就是子类拥有多个父类,并且具有它们共同的特征,即,子类继承了父类的方法和属性,。,水鸟拥有了鱼和鸟的特征,多继承,多继承可以看做是单继承的扩展,语法格式如下:,class,子类名,(,父类,1,,父类,2,),:,如果子类继承的多个父类间是平行的关系,子类先继承的哪个类就会调用哪个类的方法。,重写父类方法和调用父类方法,在继承关系中,子类会自动拥有父类定义的方法,但是有时子类想要按照自己的方式实现方法,即对父类中继承来的方法进行重写,使得子类中的方法覆盖掉跟父类同名的方法。,需要注意的是,,在子类中重写的方法要和父类被重写的方法具有相同的方法名和参数列表,。,过渡页,01,封装,02,继承,03,多态,04,类属性和实例属性,05,类方法和静态方法,03,多态,Hello,您好,不同国家的人,打招呼的方式是不同的,。,多态,多态,class A(object):,def test(self):,print(-A-test),class B(A):,def test(self):,print(-B-test),def func(temp):,temp.test(),a=A(),b=B(),func(a),func(b),A,类,B,类,a,、,b,的对象,两次调用,func,函数,结果不一样,多态,分析过程:,过渡页,01,封装,02,继承,03,多态,04,类属性和实例属性,05,类方法和静态方法,04,类属性和实例属性,类属性,类属性是类所拥有的属性,,它需要在类中进行显示地定义(位于类内部,方法的外面),它被所有类的实例对象所共有,在内存中只存在一个副本,。,class Cat(object):,#,类属性,num=0,类属性示例代码:,实例属性,通过,“,实例,.,属性,”,添加属性,的属性都是实例属性。,实例属性示例:,def _init_(self):,#,实例属性,self.age=1,过渡页,01,封装,02,继承,03,多态,04,类属性和实例属性,05,类方法和静态方法,05,类方法和实例方法,类方法,使用修饰器,classmethod,来标识,类方法,。,class,类名,:,classmethod,def,类方法名,(cls):,方法体,要想调用类方法,既可以通过对象名调用类方法,又可以通过类名调用类方法,,这两种方法没有任何区别。,静态方法,使用修饰器,staticmethod,来标识,静态,方法,。,class,类名,:,staticmethod,def,静态方法名,():,方法体,静态方法,静态方法是没有,self,参数,,在静态方法中无法访问实例变量,。,静态方法中不可以直接访问类属性,但是,可以通过类名引用类属性,。,静态方法跟定义它的类没有直接关系,,只是起到了类似函数的作用。,本章小结,本章继续介绍了面向对象编程的知识,包括,面向对象的三大特征(封装、继承和多态),,然后介绍了,类属性和实例属性,,最后介绍了,类方法和静态方法,。通过对本章内容的学习,大家应该对面向对象有了深入地理解,为面向对象编程埋下了伏笔。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服