在Java中,我的代码如下所示:
new Injector(ClassToInjectOn.class, whatever)
因此,Injector类需要一些
Class<>
参数。用Java做事时效果很好。
但是现在我想使用jython配置喷射器对象。
我试过了:
Injector(ClassToInjectOn.class, whatever)
结果是:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: instance attr: class
我尝试了自动补全;并发现我可以使用
ClassToInjectOn.__class__
...,但是随后传递到注入器中的Class对象将是java.lang.Class(但应为ClassToInjectOn.class)。不幸的是,搜索python和“ .class”并不能真正提供有用的答案。
最佳答案
在python中,ClassToInjectOn
是类对象。这就是ClassToInjectOn.__class__
为您提供java.lang.Class
的原因,因为这就是类对象的类。所以你只需要写:
Injector(ClassToInjectOn, whatever)
关于java - 如何在jython代码中访问javas“.class”属性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35312898/