Python面向对象的继承

本网站用的阿里云ECS,推荐大家用。自己搞个学习研究也不错
Python面向对象的继承,继承主要就是继承父类的一些方法,代码中很详细

#!/usr/bin/env python
#coding:utf-8

class Father(object):#新式类
    def __init__(self):
        self.name=’Liu’
        self.FamilyName=’Yan’
       
    def Lee(self):
        print ‘我是父类函数Lee’
   
    def Allen(self):
        print “我是父类函数Allen”
       
class Son(Father):
    def __init__(self):
        #Father.__init__(self)  #经典类执行父类构造函数
        super(Son,self).__init__()  #新式类执行父类构造函数
        self.name=’Feng’
       
    def Aswill(self): #子类新增函数
        print ‘Son.Bar’
   
    def Lee(self):#重写父类函数Lee
        print ‘子类重写了父类函数Lee’
   
s1=Son()
print “继承了父类的姓”+ s1.FamilyName
print “重写了父类的名字”,s1.name
s1.Lee() #子类重写了父类函数Lee
s1.Allen() #子类继承了父类函数Allen

继承多个类时的顺序,经典类继承是深度优先,是一个BUG, 新式类是广度优先,应该是用新式类去定义类

新式类

class A(object): #新式类的写法
    def __init__(self):
        print ‘This is from A’
   
    def test(self):
        print ‘This is test from A’

class B(A):
    def __init__(self):
        print “This is from B”
       

class C(A):
    def __init__(self):
        print “This is from C”
   
    def test(self):
        print “This is test from C”
       
       
class D(B,C):
    def __init__(self):
        print ‘this is D’
       
T1=D()
T1.test()

经典类

class A:
    def __init__(self):
        print ‘This is from A’
   
    def test(self):
        print ‘This is test from A’

class B(A):
    def __init__(self):
        print “This is from B”
       

class C(A):
    def __init__(self):
        print “This is from C”
   
    def test(self):
        print “This is test from C”
       
       
class D(B,C):
    def __init__(self):
        print ‘this is D’
       
T1=D()
T1.test()

————————————–分割线 ————————————–

CentOS上源码安装Python3.4  http://www.linuxidc.com/Linux/2015-01/111870.htm

《Python核心编程 第二版》.(Wesley J. Chun ).[高清PDF中文版] http://www.linuxidc.com/Linux/2013-06/85425.htm

《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码] http://www.linuxidc.com/Linux/2013-11/92693.htm

Python脚本获取Linux系统信息 http://www.linuxidc.com/Linux/2013-08/88531.htm

Ubuntu下用Python搭建桌面算法交易研究环境 http://www.linuxidc.com/Linux/2013-11/92534.htm

Python 语言的发展简史 http://www.linuxidc.com/Linux/2014-09/107206.htm

Python 的详细介绍请点这里
Python 的下载地址请点这里 

未经允许不得转载:演道网 » Python面向对象的继承

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册