您的位置:首页 > 编程语言 > Python开发

菜鸟说python中的继承

2005-03-01 21:14 381 查看
python支持面向对象的编程风格,这里主要说说python中的多继承:

下面的代码使用python2.4,安装后使用idle的IDE开发环境(说是IDE ,比起delphi,VS.net等简单得太多了)

从File-New菜单建立一个.py文件,写下面的代码:

class SuperClass:

    def sample(self):

        print 'SuperClass'

class SubClass(SuperClass):

    pass

sub = SubClass()

sub.sample()

要先保存,再按F5执行,在idle的主窗口显示:

>>> ================================ RESTART ================================

>>>

SuperClass

>>>

子类调用了父类的sample方法,现在修改代码,如下:

class SuperClass:

    def sample(self):

        print 'SuperClass'

class SuperClass1:

    def sample(self):

        print 'SuperClass1'

class SubClass(SuperClass,SuperClass1):

    pass

sub = SubClass()

sub.sample()

运行代码,看到的结果和上面的是一样的,这里子类调用的第一个父类的sample方法,第二个父类的不被调用,

现在知道下面要说什么了吧,把SubClass类的声明改成:

class SubClass(SuperClass1,SuperClass):

    pass

运行,看到的结果是SuperClass1的sample方法被调用。

>>> ================================ RESTART ================================

>>>

SuperClass1

>>>

到这里,可以看出在多继承的情况下,父类中的相同方法在子类中会调用类声明的第一个父类的方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: