シンプルな反射Kotlinの例

Kotlinでは、我々は、機能的な反射を達成するための2つの方法があります。一つは、以下のAPIを呼び出すjava.lang.reflectのJavaパッケージの反映である、他のはKotlinのAPI以下の直接呼び出しkotlin.reflectパッケージです。
直接バーコードに添付

data class KotlinGirl(
var name:String?=null,
var age:String?=null)

コンストラクタへの最初の
コードのみがいくつかの簡単なを反映し、コード、ほぼ残り使用

fun main() {
    //java方式反射
    var girlClass = KotlinGirl::class.java
    val con= girlClass.getConstructor(String::class.java, String::class.java)
    var newGirl=con.newInstance("love", "18")
    print(newGirl)
    //kotlin方式反射
    var girl=KotlinGirl()
    val con1=girl::age
    con1.set("123")
    print(girl)

}

ここに画像を挿入説明
KotlinGirlのJavaリフレクションを使用して最初に作成エンティティオブジェクト
kotlin自身の反射で第二は、オブジェクトの時代に新しいエンティティの値を変更し、
はるかに速くkotlinよりも、この公式の説明を比較し、最初のJavaのリフレクション何時間がありません、第二は、快適なkotlin非常にシンプルですが、コンストラクタは、我々はと反射法とメンバ変数のために試すことができ、あまりにも快適ではありません

最後に、反射とGroovyしたかった、とScalaの書き込みのいくつかは、あまりにも多くの写真は、書き込みは、それを分離

公開された71元の記事 ウォンの賞賛276 ・は 70000 +を見て

おすすめ

転載: blog.csdn.net/weixin_43486804/article/details/104020222