博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类的继承
阅读量:5222 次
发布时间:2019-06-14

本文共 1074 字,大约阅读时间需要 3 分钟。

继承是相对两个类而言的父子关系,子类继承了父类的所有公有属性和方法,继承的好处是能够实现代码重用

#!/usr/bin/env python#-*- coding:utf-8 -*-class People(object):    def __init__(self):        self.name = 'Tom'        self.age = 23    def talk(self):        print('My name is %s' % self.name)        print('My age is %s' % self.age)class Chinese(People):    # 表示Chinese这个类继承了People这个类的公有属性和方法,括号里是父类    passif __name__ == '__main__':    # 实例化一个对象,可以通过子类直接使用父类的方法    cn = Chinese()    cn.talk()

如果父类定义的__init__方法含有参数,子类必须调用父类的__init__方法,否则会报错:

#!/usr/bin/env python#-*- coding:utf-8 -*-class People(object):    def __init__(self, name, age):    # 这里定义的__init__方法含有参数        self.name = name        self.age = age    def talk(self):        print('My name is %s' % self.name)        print('My age is %s' % self.age)class Chinese(People):        def __init__(self):        People.__init__(self, 'Tom', 23)            # 在继承的时候必须调用父类的__init__方法    ### super(Chinese, self).__init__('Tom', 23)    # 也可以通过super()函数去继承父类(可选)if __name__ == '__main__':    cn = Chinese()    cn.talk()

 

 

 

 

 

 

 

    

    

转载于:https://www.cnblogs.com/pzk7788/p/10279825.html

你可能感兴趣的文章
深入剖析,什么是eval的直接调用.
查看>>
apidoc
查看>>
3月14日-15日学习总结
查看>>
关于 ++x 和 x++ 比较难的一个例子
查看>>
第三次作业 105032014021
查看>>
记录一些容易忘记的属性 -- UILabel
查看>>
android新手关于左右滑动的问题,布局把<android.support.v4.view.ViewPager/><ImageView/> 放在上面就不行了。...
查看>>
人脸识别FaceNet+TensorFlow
查看>>
STL之map UVa156
查看>>
从Angular.JS菜鸟到专家
查看>>
再谈Vmware NAT的配置和路由流程
查看>>
javaScript数组去重方法汇总
查看>>
评价意见整合
查看>>
MySQL表的四种分区类型
查看>>
C++变量的“总分性”(Mereology)
查看>>
应用软件学习心得之mapgis功能学习
查看>>
二、create-react-app自定义配置
查看>>
Android PullToRefreshExpandableListView的点击事件
查看>>
Python学习(一)
查看>>
关于Matchvs一些使用心得与建议
查看>>