有没有一种使用反射来编程创建类的方法?例如。是否有一个私有构造函数,我们可以使用它来创建一个类类型,然后可以用它来创建该类的实例?有没有办法通过编程创建java类类型?
我知道还有其他的技巧,例如生成源代码并编译它,或者生成字节码并使用类加载器加载它......但是我想看看是否有可能以某种方式创建一个java.lang的实例.Class直接。
我想写Clojure中下面的代码:
(def c (create-class "com.example.Dog" {:fields {"legs" 4}
:methods {"bark" (... do something ...)}
:constructors {.....}}))
(def d1 (.newInstance c))
(def d2 (.newInstance c))
这真的不清楚你在这里问什么。你能提供更多细节吗? –
你问题中的Clojure部分在哪里? – Chiron
为了澄清,你需要一种方法来定义一个新的'类'(不是创建一个现有类的新对象)使用反射? – Gus