子类super调用父类函数,该函数中调用的函数是父类还子类呢

如图所示:

子类对象通过super()函数调用父类的run函数,然后直接调用了子类的demo函数,而没有调用父类的函数;猜想通过super调用父类,但self仍然代表是子类本身;

再看一例:

从这里说明self代表是子类本身;super的直接将run代码copy到子类中来;
 还看一例:

 从这里就说明了一切,通过super函数调用父类函数,等同于将父类中的函数copy到子类中执行;对象仍然是子类;而不是父类

raise NotImplementedError可用于父类虚函数的功能

猜你喜欢

转载自blog.csdn.net/ningyanggege/article/details/89337860