English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دليل Kotlin الأساسي

تحكم Kotlin

وظائف Kotlin

النصوص Kotlin

Kotlin موجه الأقران (OOP)

الجسيمات المشاركة (Companion) في Kotlin

في هذا المقال، ستتعلمين بفضل الأمثلة كيفية إنشاء واستخدام الكائنات المصاحبة في برامج Kotlin.

قبل مناقشة الكائنات المصاحبة، دعونا نستعرض مثالاً لزيارة أعضاء الفئة.

class Person {
    fun callMe() = println("I'm called.")
{}
fun main(args: Array<String>) {
    val p1 = Person()
    
    //استدعاء method: callMe () باستخدام كائن p1
    p1.callMe()    
{}

في هذا المكان، قمنا بإنشاء كائن من الفئة Person باسم p1 لاستدعاء method: callMe ()

لكن، في Kotlin، يمكنك أيضًا استدعاء method: callMe () باستخدام اسم الفئة (أي في هذا المثال Person). لتحقيق ذلك، تحتاج إلى استخدام الكلمة المفتاحية companion لتمييزهاإعلان الكائنإعلان الكائن لإنشاء كائن مصاحب.

مثال: كائن مصاحب

class Person {
    companion object Test {
        fun callMe() = println("I'm called.")
    {}
{}
fun main(args: Array<String>) {
    Person.callMe()
{}

عند تشغيل البرنامج، الناتج يكون:

أناُ أُدعى.

في البرنامج، يتم إعلان الكائن Test باستخدام الكلمة المفتاحية companion لإنشاء كائن مصاحب. لذلك، يمكنك استدعاء method: callMe() باستخدام اسم الفئة التالي:

Person.callMe()

اسم الجسيم المشارك هو اختياري ويمكن تجاوزه.

class Person {
    
    // تم حذف اسم الجسيم المشارك
    companion object {
        fun callMe() = println("I'm called.")
    {}
{}
fun main(args: Array<String>) {
    Person.callMe()
{}

إذا كنت مطلعًا على Java، قد تربط جسيمات الرفقة بمتغيرات التابعات الثابتة (على الرغم من أن طريقة عملها مختلفة تمامًا)

يمكن للجسيمات المشاركة الوصول إلى العضوية الخاصة للصفة. لذلك، يمكن استخدامها لتحقيق نموذج طريقة المصنع.