2017-04-06 7 views

答えて

3

SomeClass.classの場合は、閉鎖モデルの場合は`SomeClass`、公開宣言の場合は`class SomeClass`です。

someInstance.classの場合はtypeの機能をceylon.language.metaから使用できます。 Try it!

import ceylon.language.meta { type } 

class C() {} 
class D() extends C() {} 

shared void run() { 
    C c = D(); 
    print(type(c)); 
} 

typeは、閉じられたモデルを返しすなわち適用される型引数を持つ;。。。あなたは.declarationで開いた宣言を得ることができます)

+3

これは 'のjava.langを返しませんしかし、「クラス」。 [ceylon.interop.java](https://modules.ceylon-lang.org/repo/1/ceylon/interop/)から 'javaClass'、' javaClassFromDeclaration'、 'javaClassFromModel'または' javaClassFromInstance'を使う必要があります。 java/1.3.2/module-doc/api/index.html)を参照してください。 –

+0

はい、しかし、OPは、特に "Javaの" SomeClass.class'に相当する_ "を求めました。私はそれが、オペレーションがセイロンのメタプログラミング施設に興味を持っていたことを意味するものです。 –

+0

彼はまた、「java.lang.Classオブジェクトをパラメータとして取るメソッド」と書いています。 – Quintesse

関連する問題