关于子类自身调用的问题
python吧
全部回复
仅看楼主
level 1
米.开朗.绮罗
楼主
楼主现在有个子类Box继承父类Ui_Mainwindow,子类定义有另外两个方法,我想让这两个子类方法使用self互相调用,父类调用子类,父类为主类,运行时编译器报错父类没有子类的方法,请问如何实现上述想法?感谢各位大佬解惑
2022年08月22日 02点08分
1
level 12
正品美妆专供🌸
口齿不清,重新表达
2022年08月22日 02点08分
3
米.开朗.绮罗
请大佬说说理解,有什么我没说明白的我不愁
2022年08月22日 03点08分
米.开朗.绮罗
补充
2022年08月22日 03点08分
正品美妆专供🌸
@米.开朗.绮罗
根本不知道你想表达什么,什么叫父类调用子类,方法互相调用?这么调用有何意义?
2022年08月22日 03点08分
米.开朗.绮罗
父类需要调用子类的run方法,子类的run里调用子类的check()方法,现在在子类的run里用self.check()会报错,说是父类没有check方法,如何才能实现在run里调用check
2022年08月22日 03点08分
吧务
level 12
一周休七日
去掉子类就好了
直接加两个方法
毫无意义的问题,你又不实例化父类,你要你父类调子类的方法干嘛?
2022年08月22日 03点08分
4
米.开朗.绮罗
父类需要实例化,有其他功能要用,大佬帮忙看看下图吧
2022年08月22日 03点08分
level 1
米.开朗.绮罗
楼主
2022年08月22日 03点08分
8
正品美妆专供🌸
那就说明,你父类缺少这个属性,这有啥纠结的?你子类应该没调用这个方法,不然会显示子类对象缺少这个属性
2022年08月22日 04点08分
米.开朗.绮罗
@正品美妆专供🌸
那个versionChecking就在子类里的呀
2022年08月22日 04点08分
米.开朗.绮罗
@正品美妆专供🌸
难道说子类间的方法不建议互相调用?
2022年08月22日 04点08分
正品美妆专供🌸
@米.开朗.绮罗
我大概能猜到了,你应该是混淆了父类实例和子类实例,然后在父类实例调用了这个方法
2022年08月22日 04点08分
level 12
正品美妆专供🌸
因为不知道全局的写法,感觉感觉你要注意红线的调用方式,这个run的第一个参数是父类实例
2022年08月22日 04点08分
9
正品美妆专供🌸
问题应该就出现在这里,红线里的Box应该指的就是子类,这里用Box类级别调用实例方法,第一个参数传的实例,但这个self是父类实例
2022年08月22日 04点08分
米.开朗.绮罗
好像有道理
2022年08月22日 04点08分
正品美妆专供🌸
在父类里构造一个字段,self.box,然后用子类实例这个字段,然后把这个字段传进红线方法的第一个参数
2022年08月22日 04点08分
米.开朗.绮罗
@正品美妆专供🌸
对哦,我还一直纠结这个self怎么传进去,我去吃个饭,一会回来试试,感谢大佬
2022年08月22日 04点08分
1