В Цейлоне, как я могу получить объект класса из класса?

У меня есть метод, который принимает java.lang.Class объект как параметр. Как я могу получить это от класса Цейлона?

То есть эквивалент SomeClass.class на Яве.

1 ответ

Решение

За 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.)

Другие вопросы по тегам