Clojure 在不同类中创建一个静态类

Clojure 在不同类中创建一个静态类,clojure,Clojure,我正在编写一个Clojure应用程序,它在通过internet传输数据时使用BouncyCastle对数据进行加密。然而,BouncyCastle有一些编写得非常奇怪的类,特别是一个叫做ECCurve(椭圆曲线)的类。它只是一个由两个类Fp和F2m(不同种类的曲线)扩展的抽象类。但是,它们在ECCurve中是作为公共静态类编写的(而不是在单独的文件中) 所以问题是:当我在一个不同的抽象类中创建一个声明为静态的类的实例时,我如何引用它?我试过这个: (def curve (new ECCurve.

我正在编写一个Clojure应用程序,它在通过internet传输数据时使用BouncyCastle对数据进行加密。然而,BouncyCastle有一些编写得非常奇怪的类,特别是一个叫做ECCurve(椭圆曲线)的类。它只是一个由两个类Fp和F2m(不同种类的曲线)扩展的抽象类。但是,它们在ECCurve中是作为公共静态类编写的(而不是在单独的文件中)

所以问题是:当我在一个不同的抽象类中创建一个声明为静态的类的实例时,我如何引用它?我试过这个:

(def curve (new ECCurve.Fp params)) ; naive, I know (ECCurve is imported btw)
(def curve (new ECCurve/Fp params))
(def curve (new (. ECCurve Fp) params))
(def curve (new (ECCurve/Fp) params))
(def curve (new org.bouncycastle.math.ec.ECCurve.Fp params))
。。。但这两项工作都没有(编译器说抛出了ClassNotFoundException)。你知道怎么做吗

谢谢,
David是真正的类名。Javac允许您使用
ECCurve.Fp
作为基本的语法糖。

ECCurve$Fp
是真正的类名。Javac允许您使用
ECCurve.Fp
作为基本的语法糖