JDK1.5 يقدم نوع جديد - التعداد. على الرغم من أنها تعتبر وظيفة "صغيرة" في جافا ، إلا أنها تجلب الراحة "الكبيرة" لتطوري.
الاستخدام 1: ثابت
قبل JDK1.5 ، حددنا الثوابت: Fianl الثابتة العامة ...... الآن مع التعداد ، يمكنك تجميع الثوابت ذات الصلة في نوع التعداد ، وتوفر التعداد طرقًا أكثر من الثوابت.
لون التعداد العام {أحمر ، أخضر ، فارغ ، أصفر}الاستخدام 2: التبديل
بيانات التبديل قبل JDK1.6 فقط تدعم أنواع int و char و enum. يمكن أن يجعل استخدام التعدادات رمزنا أكثر قابلية للقراءة.
enum إشارة {الأخضر ، الأصفر ، الأحمر} trafficlight {signal color = signalred ؛ تغيير الفراغ العام () {switch (color) {case red: color = signalgreen ؛ استراحة؛ الحالة الأصفر: اللون = signalred ؛ استراحة؛ CASE GREEN: COLOR = Signalyellow ؛ استراحة؛ }}}الاستخدام 3: أضف طريقة جديدة إلى التعداد
إذا كنت تخطط لتخصيص طريقتك الخاصة ، فيجب عليك إضافة فاصلة فاصلة في نهاية تسلسل مثيل ENUM. ويتطلب Java أن يتم تعريف مثيل ENUM أولاً.
ملون التعداد العام {Red ("Red" ، 1) ، Green ("Green" ، 2) ، Blank ("White" ، 3) ، Yello ("Yellow" ، 4) ؛ // عضو متغير السلسلة الخاصة ؛ مؤشر int الخاص ؛ // construct method color (اسم السلسلة ، int index) {thisName = name ؛ thisIndex = فهرس ؛ }. }} الإرجاع null ؛ } // Get Set method method string getName () {return name ؛ } public void setName (اسم السلسلة) {thisName = name ؛ } public int getIndex () {return index ؛ } public void setIndex (int index) {thisIndex = index ؛ }}الاستخدام 4: طرق للكتابة فوق التعداد
فيما يلي مثال على تجاوز طريقة ToString ().
ملون التعداد العام {Red ("Red" ، 1) ، Green ("Green" ، 2) ، Blank ("White" ، 3) ، Yello ("Yellow" ، 4) ؛ // عضو متغير السلسلة الخاصة ؛ مؤشر int الخاص ؛ // construct method color (اسم السلسلة ، int index) {thisName = name ؛ thisIndex = فهرس ؛ }. }}الاستخدام 5: تنفيذ الواجهة
جميع التعدادات موروثة من فئة java.lang.enum. نظرًا لأن Java لا يدعم الميراث المتعدد ، فإن كائنات التعداد لا يمكن أن ترث فئات أخرى.
سلوك الواجهة العامة {void print () ؛ سلسلة getInfo () ؛ } ألوان التعداد العام يطبق السلوك {أحمر ("أحمر" ، 1) ، أخضر ("أخضر" ، 2) ، فارغ ("أبيض" ، 3) ، ييلو ("أصفر" ، 4) ؛ // عضو متغير السلسلة الخاصة ؛ مؤشر int الخاص ؛ // construct method color (اسم السلسلة ، int index) {thisName = name ؛ thisIndex = فهرس ؛ } // interface methodoverride public string getInfo () {return thisName ؛ } // interface methodoverride public void print () {systemOutPrintln (thisIndex+":"+thisName) ؛ }}الاستخدام 6: استخدم واجهة لتنظيم التعداد
الواجهة العامة طعام {enum Coffee يطبق الطعام {Black_coffee ، decaf_coffee ، latte ، cappuccino} enum dessert يطبق الطعام {الفاكهة ، الكعكة ، gelato}}الاستخدام 7: حول استخدام مجموعات التعداد
java.util.enumset و java.util.enummap هما مجموعتان التعداد. يضمن Enumset عدم تكرار العناصر في المجموعة ؛ المفتاح في Enummap هو من نوع التعداد ، ويمكن أن تكون القيمة من أي نوع. لن أوضح استخدام هاتين المجموعتين هنا ، يمكنك الرجوع إلى وثائق JDK.
للحصول على تفاصيل التنفيذ ومبادئ التعداد ، يرجى الرجوع إلى:
المرجع: "ThinkingInjava" الطبعة الرابعة //www.vevb.com/books/75540.html
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.