Python中父类、子类的一点说明
2013-06-29 17:02
239 查看
Python中类的初始化方法是__init__(),因此父类、子类的初始化方法都是这个,如果子类不实现__init__()这个函数,初始化时调用父类的初始化函数,
如果子类实现了这个函数,则要在这个函数里显式调用一下父类的__init__(),这跟C++,jAVA不一样,他们是自动调用父类构造函数的。
#初始化中调用父类初始化方法示例
#B是A的子类
class B(A):
def __init__(self):
super().__init__()
调用父类其他成员函数的三种方法:
1. 直接写类名调用;
2. 用 super(type, obj).method(arg)方法调用;
3. 在子类的定义内,如果调用父类的成员,可以直接用 super().method(arg)。
class A:
def method(self, arg):
return
class B(A):
def method(self, arg):
# A.method(self,arg) #1
# super(B, self).method(arg) #2
# super().method(arg) #3
[注意] 如果在子类定义外(即在其他函数逻辑内,子类对象去调用父类成员时),则按照:
...
ob = B()
super(B,ob).method(arg) #调用class B的父类class A的method。
...
如果子类实现了这个函数,则要在这个函数里显式调用一下父类的__init__(),这跟C++,jAVA不一样,他们是自动调用父类构造函数的。
#初始化中调用父类初始化方法示例
#B是A的子类
class B(A):
def __init__(self):
super().__init__()
调用父类其他成员函数的三种方法:
1. 直接写类名调用;
2. 用 super(type, obj).method(arg)方法调用;
3. 在子类的定义内,如果调用父类的成员,可以直接用 super().method(arg)。
class A:
def method(self, arg):
return
class B(A):
def method(self, arg):
# A.method(self,arg) #1
# super(B, self).method(arg) #2
# super().method(arg) #3
[注意] 如果在子类定义外(即在其他函数逻辑内,子类对象去调用父类成员时),则按照:
...
ob = B()
super(B,ob).method(arg) #调用class B的父类class A的method。
...
相关文章推荐
- Python中父类、子类的一点说明
- python——父类与子类的一些说明
- python 父类与子类的一些说明
- 里氏替换原则就已经说明了多态的精髓“子类对象可以替换父类对象的位置,而程序的功能不受影响
- Python 子类调用父类方法
- Python中的splitlines 的一点说明
- python 子类继承父类的__init__方法
- Python3基础 super层层调用父类的__init__方法 子类的__init__覆盖了父类的__init__的解决方法
- Python - 子类继承父类 和 Java有什么区别
- Python-类与对象-子类扩展父类属性
- python中子类调用父类的初始化方法
- python中单继承和多继承中子类默认继承父类的哪个构造函数__init__
- python子类调用父类的方法
- Python3基础 多重继承 一个子类继承于多个父类
- python子类如何调用父类的__init__方法
- 【Python】Python中子类怎样调用父类方法
- Python基础-接口与归一化设计、抽象类、继承顺序、子类调用父类,多态与多态性
- Python中子类如何获取父类的类成员
- Python 父类、子类的数据掺杂到一起了?
- Python 父类调用子类方法