【问题标题】:Any good multimethod implementation for Java?Java有什么好的多方法实现吗?
【发布时间】:2011-02-21 17:09:42
【问题描述】:

我想知道是否有任何像 Lisp 一样好的 Java 多方法实现/库。

我发现了这个明显冻结的:JMMF

【问题讨论】:

    标签: java multimethod


    【解决方案1】:

    您可以使用在 JVM 上运行并内置支持多方法的 Clojure。

    【讨论】:

      【解决方案2】:

      我创建了this library,它允许您通过创建满足接口的代理来使用多方法实现 Java 接口。我在几个项目中使用它,它是可以合理预测的,但请阅读文档:Java 中的多方法可以表现得很奇怪。

      【讨论】:

        【解决方案3】:

        有一些有效的替代方案可以处理multiple dispatch problem,也许这些替代方案几乎可以证明为什么它没有在该语言中实现。所以,你可以使用经典的visitor pattern,也可以使用一定量的反射。

        有一个过时的 MultiJava Project 在 Java 中实现了多调度支持,还有几个其他项目使用反射来支持 Java 中的多方法:Java MultimethodsJava Multimethods Framework。也许还有更多。

        您还可以考虑另一种支持多方法的基于 Java 的语言,例如 ClojureGroovy(这些链接指向示例)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2023-03-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-25
          • 2010-11-01
          相关资源
          最近更新 更多