zoukankan      html  css  js  c++  java
  • python 子类调用父类成员的方法

    1.直接写类名调用: parent_class.parent_attribute(self)

     1 class Animal():
     2 
     3     def __init__(self, name):
     4         self.name = name
     5 
     6     def say_name(self):
     7         print(self.name)
     8 
     9 
    10 class Dog(Animal):
    11 
    12     def __init__(self, name):
    13         Animal.__init__(self, name)
    14 
    15     def say_name(self):
    16         Animal.say_name(self)
    17 
    18 
    19 dog = Dog('小虎')
    20 dog.say_name()   # 打印'小虎'

    扩展:实例对象和类对象调用实例函数。

     1 class Animal():
     2 
     3     def __init__(self, name):
     4         self.name = name
     5 
     6     def say_name(self):
     7         print(self.name)
     8 
     9 animal = Animal('nada')
    10 animal.say_name()         # 实例对象调用实例函数,输出'nada'
    11 Animal.say_name(animal)   # 类对象调用实例函数,需要传入一个对象实例作为参数,输出'nada'

    2.用 super(type, obj).method(arg)方法调用:super(child_class, child_object).parent_attribute(arg)   【不需要写self】

     1 class Animal(object):
     2 
     3     def __init__(self, name):
     4         super(Animal, self).__init__()
     5         self.name = name
     6 
     7     def say_name(self):
     8         print(self.name)
     9 
    10 
    11 class Dog(Animal):
    12 
    13     def __init__(self, name):
    14         super(Dog, self).__init__(name)
    15 
    16     def say_name(self):
    17         super(Dog, self).say_name()
    18 
    19 
    20 dog = Dog('小虎')
    21 dog.say_name()    # 输出'小虎'
  • 相关阅读:
    wcf 配置
    一般处理程序问题重命名后问题
    jQuery取得select选择的文本与值
    C# 读取excel
    ajax 跨域问题
    java转义字符
    oracle日期时间的加减法
    在MyEclipse中,jsp文件输入中文,文件不能保存
    转自JavaEye Oracle函数大全
    转Oracle数据类型及存储方式【F】
  • 原文地址:https://www.cnblogs.com/gundan/p/8143296.html
Copyright © 2011-2022 走看看