Avatar ·

كيفية استدعاء دوال Kotlin extension من كود Java؟

مرحبًا بالجميع! لقد بدأت مؤخرًا في تعلم Kotlin وأعجبت فورًا بسهولة extension functions. فهي تسمح بإضافة دوال جديدة إلى الفئات الموجودة، مثل String أو List. ظهرت المشكلة عندما حاولت استخدام هذه الدوال في مشروع حيث جزء من الكود مكتوب بلغة Java. لدي ملف Kotlin بسيط: ```kotlin // StringExtensions.kt package com.example.utils fun String.addExclamation(): String = "$this!" ``` توقعت أن أتمكن من كتابة شيء مثل `myString.addExclamation()` من Java، لكن المترجم يعطي خطأ: "Cannot resolve method 'addExclamation'". Java ببساطة لا ترى extension function الخاصة بي. جربت طرقًا مختلفة: استيراد الفئة `StringExtensionsKt`، جعل الدالة `@JvmStatic`، لكن لا شيء يعمل بشكل صحيح. أرجو إرشادي حول كيفية تنظيم استدعاء Kotlin extensions من Java بشكل صحيح. هل هناك صيغة خاصة أو annotations؟ شكرًا مقدمًا على المساعدة! <<>>

الطريقة الصحيحة لاستدعاء Kotlin extensions