在锡兰,我如何从类中获取Class对象?

时间:2017-04-06 10:46:30

标签: ceylon

我有一个方法,它以java.lang.Class个对象作为参数。我如何从锡兰班上获得这个?

也就是说,相当于Java中的SomeClass.class

1 个答案:

答案 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));
}

Try it!

type返回一个已关闭的模型,即应用了类型参数;您可以使用.declaration获取开放声明。)