ثابت بيان
التصريح مهيئ فئة جديدة داخل إعلان فئة.
static identifier {
[body]
}
الوسيطات
معرّف
مطلوبة. الاسم فئة الذي يحتوي على حظر مهيئ.body
اختياري. تعليمات برمجية التي تشمل & & حظر مهيئ.
ملاحظات
مهيئ ثابتة ويستخدم إلى يهيّئ كائن فئة (لا مثيلات الكائن) قبل استخدامها أول. تحدث هذه اليهيّئ مرة واحدة فقط، ويمكن استخدام حقول في يهيّئ فئة التي تحتوي على المعدل ثابتة.
قد يحتوي على الفئة على عدة ثابتة مهيئ كتل interspersed مع تصريحات الحقل ثابتة . إلى يهيّئ the فئة, الجميع the ثابت blocks و ثابت حقل المهيئات are executed في the ترتيب في which they appear في the فئة النص الأساسي. This تهيئة هو performed قبل the أول مرجع إلى a ثابت حقل.
Do not confuse the ثابت معدّل مع the ثابت كشف. The ثابت معدّل denotes a عضو that belongs إلى the فئة itself, not أي مثيل of the فئة.
مثال
يظهر المثال التالي إعلان بسيط الفئة التي مهيئ ثابتة هو المستخدمة لإجراء عملية حسابية يحتاج إلى أن هذه العملية مرة واحدة فقط. في ترتيب هو سبيل المثال، جدول ضرب مضروباتها هو الحساب مرة واحدة. عندما تكون هناك حاجة إلى ضرب مضروباتها التي يتم قراءتها من الجدول. Th هو الأسلوب هو أسرع من شكل متكرر ضرب مضروباتها جارى الحساب في حالة استلزام ضرب مضروباتها كبير عدة مرة/مرات في البرنامج.
المعدل ثابتة هو المستخدمة للأسلوب factorial.
class CMath {
// Dimension an array to store factorial values.
// The static modifier is used in the next two lines.
static const maxFactorial : int = 5;
static const factorialArray : int[] = new int[maxFactorial];
static CMath {
// Initialize the array of factorial values.
// Use factorialArray[x] = (x+1)!
factorialArray[0] = 1;
for(var i : int = 1; i< maxFactorial; i++) {
factorialArray[i] = factorialArray[i-1] * (i+1);
}
// Show when the initializer is run.
print("Initialized factorialArray.");
}
static function factorial(x : int) : int {
// Should have code to check that x is in range.
return factorialArray[x-1];
}
};
print("Table of factorials:");
for(var x : int = 1; x <= CMath.maxFactorial; x++) {
print( x + "! = " + CMath.factorial(x) );
}
إخراج هذه التعليمات البرمجية هي:
Table of factorials:
Initialized factorialArray.
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120