English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدرس، سنتعلم من خلال الأمثلة نهائية Java final variables، نهائية methods ونهائية classes.
في Java،يُستخدم المفتاح النهائي لتمثيل المعادلات الثابتة. يمكن استخدامه مع المتغيرات، الطرق والفئات.
بمجرد أن يتم إعلان أي كيان (متغير، طريقة أو فئة) كنهائي، يمكن تخصيصه مرة واحدة فقط. أي،
لا يمكن إعادة تعيين متغير النهاية بأخرى
لا يمكن تعديل الطريقة النهائية
لا يمكن توريث الفئة النهائية
في Java،لا يمكن تغيير قيمة متغير النهاية. على سبيل المثال،
class Main { public static void main(String[] args) { // إنشاء متغير نهائي final int AGE = 32; // محاولة تغيير متغير النهاية AGE = 45; System.out.println("العمر: " + AGE); } }
في البرنامج السابق، قمنا بإنشاء متغير نهائي يُسمى age. ونحاول تغيير قيمة متغير النهاية.
عند تشغيل البرنامج، سيظهر رسالة خطأ التجميع التالية، التي تشير إلى خطأ في التجميع.
لا يمكن تعيين قيمة للمتغير النهائي AGE AGE = 45; ^
ملاحظة:يُنصح باستخدام النصوص الكبيرة في بيانات النهاية في Java.
قبل فهم final methods و final classes، تأكد من أنك تفهمJava الوراثة。
في Java،لا يمكن تغيير الطريقة النهائية من قبل الفئة الفرعية. على سبيل المثال،
class FinalDemo { //إنشاء الطريقة النهائية public final void display() { System.out.println("هذه هي الطريقة النهائية."); } } class Main extends FinalDemo { //حاول إعادة كتابة الطريقة النهائية public final void display() { System.out.println("تم تغيير الطريقة النهائية."); } public static void main(String[] args) { Main obj = new Main(); obj.display(); } }
في المثال السابق، قمنا بإنشاء طريقة نهائية تُسمى display() داخل فئة FinalDemo. هنا، تنشأ فئة Main من فئة FinalDemo.
نحاول تغيير الطريقة النهائية في الفئة Main. عند تشغيل البرنامج، سيظهر رسالة خطأ في التجميع تشير إلى خطأ في التجميع.
لا يمكن تغيير display() في Main إلى display() في FinalDemo public final void display() { ^ الطريقة النهائية المحتملة
في Java،لا يمكن توريث الفئة النهائية من قبل فئة أخرى. على سبيل المثال،
final class FinalClass {}} //إنشاء الطريقة النهائية public void display() { System.out.println("هذه هي الطريقة النهائية."); } } class Main extends FinalClass { //حاول إعادة كتابة الطريقة النهائية public void display() { System.out.println("إعادة كتابة الطريقة النهائية"); } public static void main(String[] args) { Main obj = new Main(); obj.display(); } }
في المثال السابق، قمنا بإنشاء فئة نهائية تسمى FinalClass. هنا، نحاول توريث FinalClass من فئة Main.
عند تشغيل البرنامج، سيظهر رسالة خطأ التجميع التالية، التي تشير إلى خطأ في التجميع.
لا يمكن توريث من FinalClass النهائي class Main extends FinalClass { ^