server 发表于 2023-7-23 18:40:58

发个图,看大家有没有遇到跟我同样的困惑。。


在对一些库进行二次封装扩展的时候,难免遇到需要使用同一个函数名称的时候。
这个时候,可以使用【@虚拟方法, 可覆盖】。
但,问题是,如果参数对不上,则不能使用这个属性。
正因为是对库的二次改动,难免需要有所改动。
有办法解决吗?
达到的目的是:A类被声明所调用的是A类A方法。
                      B类A方法止于 A类内调用。
还有,能否,可以 以 A.父对象.A()这样的形式,继续调用B类A方法?


Xelloss0618 发表于 2023-7-23 19:31:30

虚拟方法的参数不能变,JAVA、C++ 等语言也是这样。
参数变了,那就是重载,自然也不需要用到虚拟方法,不过火山不支持重载。
通过父对象可以调用父类的虚拟方法。

创世魂 发表于 2023-7-23 22:31:38

参数对不上肯定不能用的。想其它办法解决吧。。
页: [1]
查看完整版本: 发个图,看大家有没有遇到跟我同样的困惑。。