العودة إلى الدورة

الكلمة المفتاحية this ومتغيرات النسخة

إتقان لغة Java: من الصفر إلى مطور محترف (رحلة من 50 درساً)

الدرس 17: الكلمة المفتاحية this ومتغيرات النسخة

الكلمة المفتاحية this هي مرجع إلى الكائن الحالي — الكائن الذي يتم تنفيذ دالته أو منشئه حالياً.

1. الوصول إلى متغيرات النسخة

الاستخدام الأساسي لـ this هو التمييز بين متغيرات النسخة (instance variables) والمتغيرات المحلية (مثل معاملات الدالة) عندما يتشاركون نفس الاسم.

java public class User { // متغير النسخة (Field) private String name;

// منشئ ذو معاملات، حيث معامل 'name' يحجب الحقل 'name'
public User(String name) {
    // 'this.name' يشير إلى متغير النسخة التابع للفئة.
    this.name = name; 
}

public void printName() {
    System.out.println(this.name); // استخدام 'this' بشكل صريح للوضوح
}

}

2. استدعاء منشئات أخرى (Constructor Chaining)

إذا كانت الفئة تحتوي على منشئات متعددة، يمكنك استخدام this() لاستدعاء منشئ آخر من داخل المنشئ الحالي. هذا يساعد في تجنب تكرار الكود.

java public class Product { String name; double price;

// المنشئ الكامل
public Product(String name, double price) {
    this.name = name;
    this.price = price;
}

// منشئ مبسط (يستخدم سعراً افتراضياً 0.0)
public Product(String name) {
    // يستدعي المنشئ الأول:
    this(name, 0.0); 
}

}

قاعدة: إذا استخدمت this() لاستدعاء منشئ آخر، يجب أن تكون أول جملة في جسم المنشئ.