繁体   English   中英

具有相同名称的Jython覆盖方法

[英]Jython override method with same name

我在2010年看到类似的问题发生在JRuby上,当时我们试图在Jruby中覆盖一个在java源代码上重载的方法。 我们如何在Jython中处理这个问题? 更具体地说,我如何指定其中一个重载方法被覆盖并忽略剩余的方法或如何覆盖所有方法?

谢谢

Python不支持方法重载(但它支持默认值)。

def my_function(paramA, paramB = None):
  pass

由于Jython只是一个Python实现,我相信同样的立场。

要从Jython调用特定的Java方法,您可能必须使类型非常接近,甚至完全匹配。

Jython做了一些类型强制 ,但在某些情况下,这不会选择你想要的方法。

要在特定基类上调用公共方法,可以使用BaseClass.method(self, ...) 要调用受保护的方法,必须为方法名称self.super__method(...) 前缀 ,例如self.super__method(...)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM