دليل المبتدئين إلى Java eNum - لماذا ولماذا يجب أن أستخدم Enum؟ أمثلة على Java Enum

نشرت: 2019-04-23

دليل المبتدئين إلى Java eNum - Crunchify Tips

التعدادات هي قوائم من constants مثل المتغيرات غير القابلة للتغيير. هل سمعت عن Final keyword ؟ انها مثل هذه.

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

يجب عليك دائمًا استخدام التعدادات عندما يمكن للمتغير (خاصة معلمة الطريقة) أن يأخذ واحدًا فقط من مجموعة صغيرة من القيم الممكنة. من الأمثلة على ذلك ثوابت النوع (حالة العقد: "دائم" ، "مؤقت" ، "مبتدئ") ، أو علامات ("تنفيذ الآن" ، "تأجيل التنفيذ").

إذا كنت تستخدم التعدادات بدلاً من الأعداد الصحيحة (أو أكواد السلسلة) ، فإنك تزيد من تدقيق وقت الترجمة وتتجنب الأخطاء من تمرير الثوابت غير الصالحة ، وتوثق القيم التي يُسمح باستخدامها.

دليل المبتدئين إلى جافا تعداد لماذا ولماذا يجب أن أستخدم التعداد

مثال جافا :

انتاج:

بعض النقاط المهمة جدًا في Java Enum:

النقطة 1

جميع التعدادات تتضمن ضمنيًا java.lang.Enum . نظرًا لأن Java لا تدعم الوراثة المتعددة ، لا يمكن للتعداد توسيع أي شيء آخر.

النقطة 2

Enum in Java are type-safe: يحتوي Enum على مساحة اسم خاصة به. هذا يعني أن التعداد الخاص بك سيكون له نوع على سبيل المثال "الشركة" في المثال أدناه ولا يمكنك تعيين أي قيمة بخلاف المحدد في Enum Constants.

نقطة 3

يمكنك تحديد قيم ثوابت التعداد في وقت الإنشاء. MyEnum.values() بإرجاع صفيف من قيم MyEnum.

انتاج:

النقطة 4

ثوابت التعداد ثابتة ونهائية بشكل ضمني ولا يمكن تغييرها بمجرد إنشائها.

نقطة 5

يمكن مقارنة Enum بأمان باستخدام:

  1. بيان حالة التبديل
  2. == عامل التشغيل
  3. طريقة .equals () الرجاء اتباع البرنامج التعليمي الكامل.

نقطة 6

لا يمكنك إنشاء مثيل من التعدادات باستخدام عامل تشغيل جديد في Java لأن مُنشئ Enum في Java يمكن أن يكون خاصًا فقط ولا يمكن إنشاء ثوابت Enums إلا داخل Enums نفسه.

نقطة 7

يتم إنشاء مثيل Enum في Java عند استدعاء أي من ثوابت Enum أو الإشارة إليها في الكود لأول مرة.

نقطة 8

يحدد التعداد قائمة بالقيم الثابتة المعينة للنوع.

نقطة 9

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

نقطة 10

يجب عدم وضع علامة على التعداد الذي تم الإعلان عنه خارج فصل دراسي ثابتًا أو نهائيًا أو مجردًا أو محميًا أو خاصًا

نقطة 11

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

نقطة 12

يمكن أن ترسل ثوابت التعداد وسيطات إلى مُنشئ التعداد ، باستخدام بناء الجملة BIG (8) ، حيث يتم تمرير int literal 8 إلى مُنشئ التعداد.

نقطة 13

يمكن أن يكون لمنشئي التعداد حجج ، ويمكن أن يتم تحميلهم فوق طاقتهم.

نقطة 14

لا يمكن أبدا استدعاء منشئات التعداد مباشرة في الكود. يتم استدعاؤها دائمًا تلقائيًا عند تهيئة التعداد.

نقطة 15

تعتبر الفاصلة المنقوطة في نهاية إعلان التعداد اختيارية.

هذه قانونية:

  • تعداد فو {واحد ، اثنان ، ثلاثة}
  • تعداد Foo {ONE، TWO، THREE} ؛

مثال آخر بسيط على Java eNUM:

enum_data_type - كرانشيفي

Enums هي قوائم الثوابت. عندما تحتاج إلى قائمة قيم محددة مسبقًا والتي تمثل نوعًا من البيانات الرقمية أو النصية ، يجب عليك استخدام التعداد.

يجب عليك دائمًا استخدام التعدادات عندما يمكن للمتغير (خاصة معلمة الطريقة) أن يأخذ واحدًا فقط من مجموعة صغيرة من القيم الممكنة. من الأمثلة على ذلك ثوابت النوع (حالة العقد: "دائم" ، "مؤقت" ، "مبتدئ") ، أو علامات ("تنفيذ الآن" ، "تأجيل التنفيذ").

إذا كنت تستخدم التعدادات بدلاً من الأعداد الصحيحة (أو أكواد السلسلة) ، فإنك تزيد من تدقيق وقت الترجمة وتتجنب الأخطاء من تمرير الثوابت غير الصالحة ، وتوثق القيم التي يُسمح باستخدامها.

بين ذلك ، قد يعني الإفراط في استخدام التعدادات أن الأساليب الخاصة بك تفعل الكثير (غالبًا ما يكون من الأفضل أن يكون لديك عدة طرق منفصلة ، بدلاً من طريقة واحدة تأخذ العديد من العلامات التي تعدل ما تفعله) ، ولكن إذا كان عليك استخدام العلامات أو أكواد الكتابة ، فقم بالتعداد هي الطريق للذهاب.

هذا مثال بسيط جدًا لـ Java eNum

انتاج: