غالبًا ما يتم استخدام النهائي مع ثابت لإعلان الثوابت ، وسوف ترى أيضًا كيف يحسن الأداء النهائي لأداء التطبيق.
ما معنى الكلمة الرئيسية النهائية؟
النهائي هو كلمة رئيسية محجوزة في Java ، والتي يمكن أن تعلن متغيرات الأعضاء والأساليب والفئات والمتغيرات المحلية. بمجرد إعلان المرجع على أنه نهائي ، لن تتمكن من تغيير المرجع.
ما هي المتغيرات النهائية؟
أي متغير عضو أو متغير محلي (تسمى المتغيرات في الأساليب أو كتل التعليمات البرمجية المتغيرات المحلية) التي يتم إعلانها على أنها نهائية تسمى المتغير النهائي. غالبًا ما تستخدم المتغيرات النهائية مع الكلمات الرئيسية الثابتة كثوابت. فيما يلي مثال على المتغير النهائي:
نسخة الكود كما يلي:
قرض السلسلة النهائية الثابتة العامة = "القرض" ؛
القرض = سلسلة جديدة ("قرض") // خطأ في التجميع غير صالح
المتغير النهائي هو القراءة فقط.
ما هي الطريقة النهائية؟
يمكن أن يعلن النهائي الأساليب. تتم إضافة الكلمة الرئيسية النهائية قبل الطريقة ، مما يعني أنه لا يمكن إعادة كتابة هذه الطريقة بطرق الفئة الفرعية. إذا كنت تعتقد أن وظيفة الطريقة كاملة بما فيه الكفاية ولا تحتاج إلى تغييرها في الفئة الفرعية ، فيمكنك إعلان هذه الطريقة النهائية. الطريقة النهائية أسرع من الطريقة غير النهائية ، لأنها مرتبطة بالفعل بشكل ثابت أثناء التجميع ولا تحتاج إلى ربط ديناميكي في وقت التشغيل. فيما يلي مثال على الطريقة النهائية:
نسخة الكود كما يلي:
فئة personalloan {
السلسلة النهائية العامة getName () {
إرجاع "القرض الشخصي" ؛
}
}
Class Cheappersonalloan يمتد personalloan {
@تجاوز
السلسلة النهائية العامة getName () {
إرجاع "قرض شخصي رخيص" ؛
}
}
ما هو الفصل النهائي؟
يسمى الفصل الذي يستخدم النهائي لتعديل الفصل النهائي. عادة ما تكون الفصول النهائية كاملة وظيفيًا ولا يمكن مورراها. هناك العديد من الفصول في Java نهائية ، مثل String و Interger ولفات الغلاف الأخرى. فيما يلي مثال على الفصل النهائي:
نسخة الكود كما يلي:
الفئة النهائية personalloan {
}
Class Cheappersonalloan يمتد personalloan {// خطأ التجميع: لا يمكن أن يرث من الفئة النهائية
}
فيما يلي بعض فوائد استخدام الكلمات الرئيسية النهائية
الكلمة الرئيسية النهائية تحسن الأداء. كل من تطبيقات JVM و Java Cache المتغيرات النهائية.
يمكن مشاركة المتغيرات النهائية بأمان في بيئات متعددة الخيوط دون الحاجة إلى المزامنة إضافية.
باستخدام الكلمة الرئيسية النهائية ، سيقوم JVM بتحسين الأساليب والمتغيرات والفئات.
فئة ثابتة
لإنشاء فئة غير قابلة للتغيير ، استخدم الكلمة الرئيسية النهائية. فئة غير قابلة للتغيير تعني أنه لا يمكن تغيير كائناتها بمجرد إنشائها. السلسلة هي ممثل للفصول غير القابلة للتغيير. تحتوي الفصول غير القابلة للتغيير على العديد من الفوائد ، مثل كائناتها للقراءة فقط ويمكن مشاركتها بأمان في بيئة متعددة الخيوط دون النفقات العامة الإضافية للمزامنة ، وما إلى ذلك.
القراءة ذات الصلة: لماذا تكون السلسلة غير قابلة للتغيير وكيفية كتابة فصل ثابت.
معرفة مهمة حول النهائي
يمكن استخدام الكلمة الرئيسية النهائية لمتغيرات الأعضاء والمتغيرات المحلية والأساليب والفئات.
يجب تهيئة متغيرات الأعضاء النهائية في وقت الإعلان أو في المنشئ ، وإلا سيتم الإبلاغ عن خطأ في التجميع.
لا يمكنك تعيين متغير نهائي مرة أخرى.
يجب تعيين المتغيرات المحلية قيمًا في وقت الإعلان.
يجب أن تكون جميع المتغيرات في فئة مجهولة المتغيرات النهائية.
لا يمكن إعادة كتابة الطريقة النهائية.
لا يمكن مورث الفصل النهائي.
تختلف الكلمة الرئيسية النهائية عن الكلمة الرئيسية النهائية ، والتي يتم استخدامها لمعالجة الاستثناءات.
يتم الخلط بين الكلمة الرئيسية النهائية بسهولة مع طريقة اللمسات الأخيرة () ، وهي طريقة محددة في فئة الكائن وهي طريقة تسمى JVM قبل مجموعة القمامة.
جميع المتغيرات المعلنة في الواجهة هي نفسها نهائية.
ترتبط الكلمة الرئيسية النهائية والتجريدية بشكل عكسي ، وبالتالي لا يمكن أن تكون الفصل النهائي مجردة.
يتم ربط الطريقة النهائية في مرحلة التجميع ، والتي تسمى الربط الثابت.
يسمى المتغير النهائي الفارغ الذي لا يهيئة المتغير النهائي في الإعلان متغيرًا نهائيًا فارغًا. إذا لم تقم بذلك ، فسيحتاج المترجم عن خطأ "المتغير النهائي (الاسم المتغير) يحتاج إلى تهيئة".
إن إعلان الفصول والأساليب والمتغيرات كنهائي يمكن أن يحسن الأداء ، بحيث تتاح لـ JVM الفرصة للتقدير ثم التحسين.
وفقًا لاتفاقية Code Java ، فإن المتغيرات النهائية هي ثوابت ، وعادة ما يتم رسملة الأسماء الثابتة:
عدد int النهائي الخاص = 10 ؛
يعني الإعلان عن كائنات التجميع أنه لا يمكن تغيير المرجع ، ولكن يمكنك إضافة المحتوى أو حذفه أو تغييره إليه. على سبيل المثال:
قروض القائمة النهائية الخاصة = جديد arraylist () ؛
قائمة
List.Add ("القرض الشخصي") ؛
القروض = ناقل جديد () ؛
نحن نعرف بالفعل ما هي المتغيرات النهائية والأساليب النهائية والفصول النهائية. استخدم النهائي عند الضرورة لكتابة رمز أسرع وأفضل.