Genel bir Java sınıfıyla karşılaştırıldığında bir Kotlin sınıfı ile karşılaşırsam özel işlevsellik yapmak istiyorum. Kotlin sınıfı olup olmadığını nasıl anlayabilirim?Bir JVM Sınıfı'nın bir Kotlin sınıfı olup olmadığını belirlemek istiyorum
someClass.kotlin
numaralı telefonun aranmasının bir istisna fırlatacağını veya sınıf Kotlin değilse başarısız olacağını umuyordum. Ama Java sınıflarını güzelce sarar. Daha sonra, someClass.kotlin.primaryConstructor
yaparsam, varsayılan bir kurucuya sahip olsalar bile tüm java sınıfları için null
gibi görünüyor, bu iyi bir işaretleyici mi olduğunu fark ettim. Ama bu da bir Kotlin sınıfı için null
'u geri alabilir mi?
"Bu bir Kotlin sınıfı mıdır?" Demenin en iyi yolu nedir?
Neden sınıfı doğrudan karşılaştırmıyorsunuz? 'it.annotationClass == Metadata :: class' – Raman
Sınıf erişilebilir değil, 'internal' –
Ah. Java'dan erişilebilir gibi görünüyor. Örneğin, Spring Framework için bu (koşulsuz) çekme talebini yazdım: https://github.com/spring-projects/spring-framework/pull/1060/files#diff-244315b45582a5b7573a15644b16c373R48 (evet, Java'da yazılmasını istediler eek). – Raman