我已经询问了一些与我正在开发的游戏相关的问题。该问题是在开发过程中出现的,但实际上与游戏本身无关。我的代码中有一个方法(子类中的“resize”),它调用其超类中的等效方法(超类的“resize”)。预期行为:超级调整大小调用 Super-do_rotozoom发生了什么:称为 Sub-do_rotozoom 的超级调整大小这是一个代码示例:子类:def do_rotozoom(self): # do rotozoom stuff of subclassdef resize(self,factor): super().resize(factor) self.do_rotozoom()超类:def do_rotozoom(self): #do rotozoom stuff of superclassdef resize(self,factor): self.factor = factor self.do_rotozoom()我找到了一个解决方法,其中涉及调用super().do_rotozoom()子类方法do_rotozoom(),然后由super().resize(). 我还发现,在这种情况下我可以删除该行self.do_rotozoom()。在这种情况下,这是一个非常简单的修复,但是在更复杂的情况下我会做什么,例如,如果我需要使用do_rotozoom()超类中的其他变量调用该方法,而不是在子类/另一个特定实现中调用该方法?换句话说,我如何能够选择在特定上下文中使用哪种方法?通常,您只能从子类访问超方法,但不能从超类访问超方法(不是超类的方法,而是它自己的方法)。我还没有找到更好的标题...:D
添加回答
举报
0/150
提交
取消