أعضاء الفئة الثابتة X++

تصف هذه المقالة أعضاء الفئة الثابتة في X++. بشكل عام، استخدم أساليب ثابتة لهذه الحالات:

  • لا يحتاج الأسلوب إلى الوصول إلى متغيرات الأعضاء التي تم الإعلان عنها في الفئة .
  • لا يحتاج الأسلوب إلى استدعاء أي أساليب مثيل (غير ثابتة) للفئة.

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

Static methods

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

فيما يلي مثال على أسلوب تم الإعلان عنه باستخدام الكلمة الأساسية الثابتة .

public class SoftwareKey
{
    static public boolean validateSoftwareKey(str _softwareKeyString)
    {
        // Your code here.
        return false;
    }
}

في المثال التالي، لا يتعين عليك إنشاء مثيل لفئة SoftwareKey قبل استدعاء أسلوب ثابت على الفئة . عندما تريد استدعاء أسلوب validateSoftwareKey الثابت، يبدأ بناء الجملة باسم الفئة التي تحتوي على الأسلوب . زوج من النقطتين (::) يربط اسم الفئة باسم الأسلوب الثابت.

boolean yourBool = SoftwareKey::validateSoftwareKey(yourSoftwareKeyString);

Static fields

الحقول الثابتة هي متغيرات تقوم بتعريفها باستخدام الكلمة الأساسية الثابتة . من الناحية المفاهيمية، تنطبق على الفئة، وليس على مثيلات الفئة.

Static constructors

يتم تشغيل الدالة الإنشائية الثابتة دائما قبل إجراء أي استدعاءات ثابتة أو مثيل إلى الفئة . يعد تنفيذ الدالة الإنشائية الثابتة نسبة إلى جلسة عمل المستخدم. يستخدم الدالة الإنشائية الثابتة بناء الجملة التالي.

static void TypeNew()

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

يوضح مثال التعليمات البرمجية التالي كيفية إنشاء مثيل مفرد باستخدام منشئ ثابت.

public class Singleton
{
    private static Singleton instance;

    private void new()
    {
    }

    static void TypeNew()
    {
        instance = new Singleton();
    }

    public static Singleton Instance()
    {
        return Singleton::instance;
    }
}

يضمن singleton أن الفئة تحتوي على مثيل واحد فقط. يوضح المثال التالي كيفية إنشاء مثيل مفرد.

Singleton i = Singleton::Instance();

Static method

تنتمي الأساليب الثابتة، التي تعرف أيضا باسم أساليب الفئة، إلى فئة ويتم إنشاؤها باستخدام الكلمة الأساسية الثابتة. لا يتعين عليك إنشاء مثيل لكائن قبل استخدام أساليب ثابتة. استخدم أساليب ثابتة للعمل مع البيانات المخزنة في الجداول. لا يمكنك استخدام متغيرات الأعضاء في أسلوب ثابت. استخدم بناء الجملة التالي لاستدعاء أساليب ثابتة.

ClassName::methodName();

أساليب ثابتة ومثيل

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