Python中类的__init__继承
Python中类的__init__继承
概念:
定义父类
In [10]: class Person:
....: def __init__(self,name,age,sex):
....: self.name = name
....: self.age = age
....: self.sex = sex
....: def get_name(self):
....: print('name:',self.name)
....:
In [11]: Bob = Person('Bob',18,'男') In [12]: Bob.get_name()
name: Bob【1】子类不重写__init__,实例化子类时,会自动调用父类定义的__init__
In [13]: class Person_child(Person):
....: def get_name(self):
....: print('name:',self.name)
....: In [14]: child = Person_child('baby',2,'男') In [15]: child.get_name()
name: baby【2】另一种的验证方式
class Person:
def __init__(self,name,age):
self.name = 'Bob'
self.age = 18 def get_name(self):
print('name:',self.name) class Student(Person):
def get_name(self):
print('name:',self.name) Kevin = Student('Kevin',12)
print('-------------------------')
print(Kevin.name)
print(Kevin.age)
print('-------------------------') output
-------------------------
Bob
18
-------------------------【3】但重写了__init__时,实例化子类,就不会调用父类已经定义的__init__
In [17]: class Person_child(Person):
....: def __init__(self,name,age,sex):
....: self.name = name
....: self.age = age
....: self.sex = sex
....: def get_name(self):
....: print('child_name:',self.name)
....: In [18]: K = Person_child('Kevin',16,'男') In [19]: K.get_name()
child_name: Kevin【4】为了能使用或扩展父类的行为,最好显示调用父类的__init__方法
class Person:
def __init__(self,name,age):
self.name = 'Bob'
self.age = 18 def get_name(self):
print('name:',self.name) class Student(Person):
def __init__(self,name,age,sex):
super(Student,self).__init__(name,age)
self.sex = sex def get_detail(self):
print('详细信息:',self.name,'---',self.age,'---',self.sex) Kevin = Student('Kevin',12,'男')
print('-------------------------')
print(Kevin.name)
print(Kevin.age)
print(Kevin.sex)
print(Kevin.get_detail())
print('-------------------------') # output
-------------------------
Bob
18
男
详细信息: Bob --- 18 --- 男
None
-------------------------
更新....
Python中类的__init__继承的更多相关文章
- Python中类的多层继承和多重继承
- Python 类中__init__()方法中的形参与如何修改类中属性的值
一.__init__()方法 如果__init__()方法为 class Cat(): def __init__(self,num) : self.num=num Python中类的__init__( ...
- python中类的继承
python中类的继承 在python中面向对象编程中实现继承,以下面一个实例进行说明. class SchoolMenber(): # __init__类似于c++中的构造函数 # __init__ ...
- Python中类的继承代码实例
Python中类的继承代码实例 这篇文章主要介绍了Python中类的继承代码实例,本文直接给出代码及运行效果,需要的朋友可以参考下 相对于C 的继承编写,Python更简洁,而且效率也是很高的,下面编 ...
- 第7.6节 Python中类的继承机制详述
在本章第一节,介绍了面向对象程序设计的三个特征:封装.继承和多态,前面章节重点介绍了封装和多态,由于Python语言是多态语言,对象的类型不再由继承等方式决定,而由实际运行时所表现出的具体行为来决定, ...
- 第8.3节 Python类的__init__方法深入剖析:构造方法与继承详解
第8.3节 Python类的__init__方法深入剖析:构造方法与继承详解 一. 引言 上两节介绍了构造方法的语法及参数,说明了构造方法是Python的类创建实例后首先执行的方法,并说明如果类 ...
- python 中的super()继承,搜索广度为先
一.python中类的继承 1.1 单继承 在python 中我们可以这样来定义一个类:及继承它的子类 class Father: def __init__(self, mes): #1 父类的ini ...
- 【学习笔记】--- 老男孩学Python,day18 面向对象------继承
继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类, 父类又可称为基类或超类,新建的类称为派生类或子类 python中类的继承分为:单继承和多继承 class Fathe ...
- python基础之类的继承与派生、组合、接口与归一化设计、抽象类、子类中调用父类方法
一.什么是继承 继承是一种创建新的类的方式,新建的类可以继承自一个或者多个父类,原始类称为基类或超类,新建的类称为派生类或子类. 派生:子类继承了父类的属性,然后衍生出自己新的属性,如果子类衍生出的新 ...
随机推荐
- 第二课丶pygame
学号:2017*****1024 姓名:王劲松 我的码云贪吃蛇项目仓库:https://gitee.com/Danieljs/sesnake 分析游戏中的备注和问题:10分钟 游戏名称.分数改动:3分 ...
- oracle 审计功能
Oracle 11g推出了审计功能,但这个功能会针对很多操作都产生审计文件.aud,日积月累下来这些文件也很多,默认情况下,系统为了节省资源,减少I/0操作,其审计功能是关闭的 一.审计功能关闭 1. ...
- ip xfrm命令是做什么的?
答: 设置xfrm.xfrm(transform configuration)是一个IP框架,用来转换数据包的格式,也就是使用算法来加密数据包,该框架用作IPsec协议的一部分 ip xfrm sta ...
- Office DCOM 组件交互权限设置
这里以 WORD 为例: 运行 mmc -32 打开控制台. 点击 文件 -> 添加/删除管理单元 ,在 可用的管理单元 中选择 组件服务 ,然后点击 添加 , 确定 . 展开 组件服务节 点直 ...
- nodejs的jekins部署
第一步 gitlab项目仓库给jekins服务器分配一个账号develop权限用于拉取代码. 分支为master. 第二步 jekins配置打包脚本. npm install --registry=h ...
- css复合选择器的权重
选择器的权重 标签选择器的权重为0001 class选择器的权重为0010 id选择器的权重为0100 属性选择器的权重为0010 伪类选择器的权重为0010 伪元素选择器的权重为0010 包含选择器 ...
- testng.xml中groups标签使用
XML配置如下: <?xml version="1.0" encoding="UTF-8"?> <suite name="suite ...
- OpenGL.Tutorial03_Matrices_测试
1. 2. // ZC: 工程-->右键-->属性--> 配置属性: // ZC: C/C++ -->常规-->附加包含目录,里面添加: // ZC: E:\OpenGL ...
- JAVA-类方法与实例方法
1.实例方法:一个方法如果不加static关键字,那么这个方法是实例方法.意思是他属于类的某个实例,通过这个实例调用它,对类的其他实例不产生影响. 2.类方法:也称静态方法.在方法前加static关键 ...
- java第四次上机
package bbb;public class Person { private String name; private int age; public Person(){ } public Pe ...