Python子类继承父类构造函数详解
作者:laozhang 发布时间:2023-02-27 09:13:03
标签:Python,子类继承父类
如果在子类中需要父类的构造方法就需要显式地调用父类的构造方法,或者不重写父类的构造方法。
子类不重写 __init__,实例化子类时,会自动调用父类定义的 __init__。
class Father(object):
def __init__(self, name):
self.name=name
print ( "name: %s" %( self.name) )
def getName(self):
return 'Father ' + self.name
class Son(Father):
def getName(self):
return 'Son '+self.name
if __name__=='__main__':
son=Son('runoob')
print ( son.getName() )
输出结果为:
name: runoob
Son runoob
如果重写了__init__ 时,实例化子类,就不会调用父类已经定义的 __init__,语法格式如下:
class Father(object):
def __init__(self, name):
self.name=name
print ( "name: %s" %( self.name) )
def getName(self):
return 'Father ' + self.name
class Son(Father):
def __init__(self, name):
print ( "hi" )
self.name = name
def getName(self):
return 'Son '+self.name
if __name__=='__main__':
son=Son('runoob')
print ( son.getName() )
输出结果为:
hi
Son runoob
如果重写了__init__ 时,要继承父类的构造方法,可以使用 super 关键字:
super(子类,self).__init__(参数1,参数2,....)
还有一种经典写法:
父类名称.__init__(self,参数1,参数2,...)
class Father(object):
def __init__(self, name):
self.name=name
print ( "name: %s" %( self.name))
def getName(self):
return 'Father ' + self.name
class Son(Father):
def __init__(self, name):
super(Son, self).__init__(name)
print ("hi")
self.name = name
def getName(self):
return 'Son '+self.name
if __name__=='__main__':
son=Son('runoob')
print ( son.getName() )
输出结果为:
name: runoob
hi
Son runoob
0
投稿
猜你喜欢
- 1.因为oracle 10g暂时没有与win7兼容的版本,我们可以通过对安装软件中某些文件的修改达到安装的目地。 a)打开“\ORACLE1
- 一、前端请求的封装1.将请求地址封装起来,以便日后修改,在src/assets/js目录下创建getPath.js文件export defa
- 最近在学爬虫时发现许多网站都有自己的反爬虫机制,这让我们没法直接对想要的数据进行爬取,于是了解这种反爬虫机制就会帮助我们找到解决方法。常见的
- 一、状态介绍在了解其他概念之前,我们首先要了解进程的几个状态。在程序运行的过程中,由于 * 作系统的调度算法控制,程序会进入几个状态:就绪,运
- 1、使用dict()函数,通过其他映射(比如其他字典)或者键,值对的序列建立字典。dict1 = dict(a='a', b
- 作为一名优秀的接口调用工程师,对接口的返回信息进行校验是必不可少的。校验需要保证所返回的数据格式和内容正确,以此确保页面的正确展示和用户体验
- 在处理numpy数组,有这个需求,故写下此文:使用np.argwhere和np.all来查找索引。要使用np.delete删除它们。示例1i
- 云平台是个好东西,MySQL-mmm的典型配置是需要五台机器,一台作为mmm admin,两台master,两台slave。一下子找五台机器
- 常用时间转换及处理函数:import datetime# 获取当前时间d1 = datetime.datetime.now()print d
- 前言:如何悄悄的打开朋友的摄像头,看看她最近过的怎么样,嘿嘿!这次让我带你们来实现这个功能。注: 这个程序仅限在朋友之间开玩笑,别去搞什么违
- 1.url encode加密简介:当url地址含有中文,或者参数有中文的时候,这个算是很正常了,但是把这样的url作为参数传递的时候(最常见
- 条件判断计算机之所以能做很多自动化的任务,因为它可以自己做条件判断。比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if
- 脚本主要功能:1)通过zabbix api接口采集所有监控主机ip地址;2)通过cmdb系统(蓝鲸)接口采集所有生产主机IP地址、主机名、操
- 如下所示:import urllib,json,requestsurl = 'http://127.0.0.1:8000/accou
- 在Oracle 8i版本之前,使用internal用户来执行数据库的启动和关闭以及create database等操作;从8i版本以后,Or
- 对于数据库应用程序,数据库的安全是至关重要的。SQL Server的安全功能可以保护数据免受未经授权的泄漏和篡改!下边是对安全一章的总结!首
- 今天,跟大家聊聊gin框架中是如何实现分片输出的。主要分以下4点:分片输出的效果图gin实现分片传输代码http分片传输的基础:transf
- 先来看一下Spring官网首页的一个图片滑动显示效果可以看到, 随着鼠标的滑动,绿色图片和灰色图片可以无缝的在鼠标俩两边切换显示。显示这样的
- pycharm中光标变粗,如下:原因:光标进入了改写状态。解决方法:按一下键盘中的Insert键就好了。
- 当我写下如下sql语句时,我得到了输入@c参数时想得到的结果集。select * from @tb t where t.id in (sel