Chr*_*ian 2 java class class-constants kotlin
当检查来自Kotlin源的.class文件的内容(只是“ Hello World”,别无其他)时,我在常量池中发现了一个UTF-8字符串,该字符串(a)不在任何地方使用,并且(b)内容奇怪。
能告诉我这是什么吗?
这是kotlin.Metadata注释的内容。它使用Protobuf编码,并由编译器和Kotlin-Reflect共同使用。
Kotlin使用String而不是byte[]因为类格式在存储数组时非常浪费。
当您不使用Kotlin-Reflect时,元数据未使用,可以由ProGuard删除。
| 归档时间: |
|
| 查看次数: |
40 次 |
| 最近记录: |