《零基础入门学习Python》学习过程笔记【38类的继承】
来源:互联网 发布:电力代维软件 编辑:程序博客网 时间:2024/05/21 04:20
注:构造函数__init__(self)不能有返回值
1.如何继承类A?只需在定义类时,在类名后面添加括号,括号内写上A
即class B(A):
2.子类继承父类的什么?一个子类可以继承它父类的任何属性与方法
注意!!!!!!!!!!!!子类会继承父类的构造函数!!!!!!!!!!!!!!!!!
>>> class A:def __init__(self):self.a=1self.b=1def f(self):print(self.a)print(self.b)>>> class B(A):pass
>>> b.f() #类B继承了类A的构造函数,否则根本没有a,b,以至于根本无法输出...11
>>> class A:a=1def f(self):print("正在调用A类中的方法f")>>> class B(A):b=1>>> b=B()>>> b.a1>>> b.f()正在调用A类中的方法f
3.如果子类中定义了与父类同名的属性或方法,则父类中属性或方法会被覆盖(和C++相同)
>>> class C:a=1def f(self):print("正在调用父类中的f方法")>>> class D(C):a=2def f(self):print("正在调用子类中的f方法")>>> hh=D()>>> hh.a2>>> hh.f()正在调用子类中的f方法
4.pass?
就是什么也不做,用来占位的...
例如
>>> def a():这个函数的定义不会随着你按下两次回车结束..它会不断打印出空行
但是这样就OK
>>> def a():pass>>>
但是写上pass就不会报错
定义类也是同样的情况
>>> class A:
>>> class A:pass>>>
5.as?
当引入一个类库时,可以给类库起个别名
>>> import random as r>>> r.randint(1,10)10
6.如何在子类的构造函数中引入父类的构造函数?
方法一:在子类的构造函数中添加 父类名.__init__(self)
>>> class A:def __init__(self):self.x=1self.y=1>>> class B(A):def __init__(self): #这里的self指的是子类的实例对象A.__init__(self)self.z=1>>> b=B()>>> b.x1>>> b.y1>>> b.z1
super()方法会自动帮我们找到父类的名字,自动传入self参数
>>> class B(A):def __init__(self):super().__init__()self.z=1>>> b1=B()>>> b1.x1>>> b1.y1>>> b1.z1
7.多重继承?
可以同时继承多个类的属性和方法。例如同时继承B,C,D: class A(B,C,D):
>>> class A:def f1(self):print("我是A")>>> class B:def f2(self):print("我是B")>>> class C:def f3(self):print("我是C")>>> class D(A,B,C):pass>>> d=D()>>> d.f1()我是A>>> d.f2()我是B>>> d.f3()我是C
8.如何去掉父类中的某个函数?同名pass覆盖(不知道明显提出来有什么必要,竟然鱼C说了,我也就记一下)
>>> class A:def f(self):print("A")>>> class B(A):def f(self):pass
阅读全文
0 0
- 《零基础入门学习Python》学习过程笔记【38类的继承】
- 鱼C工作室《零基础入门学习Python》 学习过程笔记【011列表类的方法】
- 《零基础入门学习Python》学习过程笔记【39类的其他内容】
- 《零基础入门学习Python》学习过程笔记【40类和对象的相关内置函数】
- 《零基础入门学习Python》学习过程笔记【017函数】
- 《零基础入门学习Python》学习过程笔记【27集合】
- 《零基础入门学习Python》学习过程笔记【28文件】
- 《零基础入门学习Python》学习过程笔记【014字符串的使用】
- 《零基础入门学习Python》学习过程笔记【36,37类】
- 零基础入门Python学习笔记3
- 《零基础入门学习Python》学习过程笔记【35图形用户界面入门】(没看)
- 《零基础入门学习Python》学习过程笔记【54用python保存一张网站上的图片】
- 《零基础入门学习Python》学习过程笔记【53如何用Python访问互联网】
- 《零基础入门学习Python》学习过程笔记【012列表的常用函数,逻辑关系,+,*,in,列表推导式】
- 《零基础入门学习Python》学习过程笔记【016列表,元组,字符串的转化及共用技巧】
- 《零基础入门学习Python》学习过程笔记【56下载一个网站指定页数的XXOO图】
- 鱼C工作室《零基础入门学习Python》学习过程笔记记录第一天 001-010
- 《零基础入门学习Python》学习过程笔记【013元组】
- selenium webdriver调用google chrome配置chromedriver
- JAVA企业面试题精选 Web基础 1-10
- 匈牙利算法模板 二分图最大匹配
- 深度学习与神经网络
- stud-2779裸bfs
- 《零基础入门学习Python》学习过程笔记【38类的继承】
- 【Leetcode】【python】Path Sum II
- POJ 3692 Kindergarten
- 一行代码解决各种IE兼容问题,IE6,IE7,IE8,IE9,IE10
- inux 安装虚拟机VMware-Workstation需要权限
- 在Linux下安装PHP过程中,编译时出现configure: error: libjpeg.(a|so) not found 错误的解决办法
- 常用 Git 命令清单
- web方向学习清单
- linux 下安装tomcat