手机版
你好,游客 登录 注册
背景:
阅读新闻

Python面向对象的继承

[日期:2015-03-17] 来源:Linux社区  作者:kobeyan [字体: ]

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 的下载地址请点这里 

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-03/115089.htm

linux
相关资讯       Python对象  Python继承 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款