我有一个方法,它以java.lang.Class
个对象作为参数。我如何从锡兰班上获得这个?
也就是说,相当于Java中的SomeClass.class
。
答案 0 :(得分:4)
对于SomeClass.class
,请使用元文字:`SomeClass`
表示封闭模型,`class SomeClass`
表示开放声明。
对于someInstance.class
,您可以使用type
中的ceylon.language.meta
功能。
import ceylon.language.meta { type }
class C() {}
class D() extends C() {}
shared void run() {
C c = D();
print(type(c));
}
(type
返回一个已关闭的模型,即应用了类型参数;您可以使用.declaration
获取开放声明。)