# -*- coding: utf-8 -*-
"""
@author:yuan_x
@software:PyCharm
@file:interface_extand.py
@time:2021/1/3 11:46 上午
"""
from abc import ABC
from abc import abstractmethod
class base_node(ABC):
"""
抽象类
"""
@abstractmethod
def get_node(self,**kwargs):
pass
@abstractmethod
def apply_node(self,**kwargs):
pass
# @abstractmethod
# def show(self,**kwargs):
# pass
class base_info():
def __init__(self):
self.db_obj=4
def show(self):
return 1+2
"""
注意 python3 的广度优先 class subclass(base_node,base_info) 的继承循序
如果base_node 在前且有同名函数 则会调base_node
1 如果没有则调 base_info
2 如果调整继承顺序 则会调 第一个继承的类
3 通过 类 名称显式的调用 show方法 base_info().show()
4 通过 supper 显示 调用super(subclass, self).show()
"""
class subclass(base_node,base_info):
def __init__(self):
super().__init__()
def show(self,**kwargs):
# return super(subclass, self).show()
return base_info().show()
def apply_node(self,**kwargs):
pass
def get_node(self,**kwargs):
pass
if __name__ == '__main__':
a=subclass()
print(a.show())