【问题标题】:Is it possible to use clojure's gen-class macro to generate a class with static fields?是否可以使用 clojure 的 gen-class 宏来生成具有静态字段的类?
【发布时间】:2013-04-27 13:37:21
【问题描述】:

能否使用 Clojure 的 gen-class 宏生成以下类?

public class Test {
    public static final String TEST_NAME = "This test's name.";
}

如果没有,为什么不呢?

【问题讨论】:

  • why not? 因为这不是 Clojure 的目的。
  • 当 clojure 不支持静态字段时,如何区分 gen-class 存在的“目的”?换句话说:为什么要提供创建原始 java 类的工具而不提供设置静态字段的机制。我不是要打架。我真的很喜欢 Clojure。我似乎无法在任何地方找到这个决定的理由。
  • Gen-class 用于 introp,即它试图赋予您创建其他 java 库所需的类的能力。 Java 库很少要求您提供具有特定静态字段的类。
  • 谢谢。这是我见过的最好的解释。
  • 好吧,那我就抄下来吧……

标签: static clojure field gen-class


【解决方案1】:

不,gen-class 不能生成静态字段,因为 gen-class 用于 introp。它试图让您能够创建其他 java 库所需的类。 Java 库很少要求您提供具有特定静态字段的类。

【讨论】:

    猜你喜欢
    • 2019-04-09
    • 1970-01-01
    • 2014-12-13
    • 1970-01-01
    • 2011-08-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-10
    • 1970-01-01
    相关资源
    最近更新 更多