الفرق بين المراجعتين لصفحة: «Kotlin/Enum»

من موسوعة حسوب
ط نقل جميل-بيلوني صفحة Kotlin/Enum/index إلى Kotlin/Enum: هو وجود الكلمة "index" في نهاية الرابط وهذا يخالف ما هو معتمد في بقية صفحات الموسوعة.
ط مراجعة وتدقيق.
سطر 1: سطر 1:
يعدُّ الصنف <code>Enum</code> الصنف الأساس لكل أصناف الترقيم (enum classes). إن أردت الاطلاع على معلومات أوسع حول أصناف الترقيم، فاقرأ [http://kotlinlang.org/docs/reference/enum-classes.html هذا المرجع].<syntaxhighlight lang="kotlin">
abstract class Enum<E : Enum<E>> : Comparable<E> (source)
</syntaxhighlight>
== الدوال البانية ==
== الدوال البانية ==
<noinclude>{{DISPLAYTITLE:الصنف <code>‎‎Enum</code>‎ في Kotlin}}</noinclude>
<noinclude>{{DISPLAYTITLE:الصنف <code>‎‎Enum</code>‎ في Kotlin}}</noinclude>
=== <code>[[Kotlin/Enum/Init|<init>]]</code> ===
=== <code>[[Kotlin/Enum/Init|<init>]]</code> ===
<code>[[Kotlin/Enum/index|Enum]]</code> هو الصنف الأساس لكل أصناف الترقيم (enum classes)،
يعدُّ الصنف <code>Enum</code> الصنف الأساس لكل أصناف الترقيم (enum classes). إن أردت الاطلاع على معلومات أوسع حول أصناف الترقيم، فاقرأ [http://kotlinlang.org/docs/reference/enum-classes.html هذا المرجع].


== الخاصيات ==
== الخاصيات ==


=== <code>[[Kotlin/Enum/name|name]]</code> ===
=== <code>[[Kotlin/Enum/name|name]]</code> ===
تعيد الخاصية <code>name</code> اسم الثابت من الكائن <code>enum</code> الذي استُدعيت عبره، كما سُمّيت أُثناء تعريف ذلك الكائن.
تمثل اسم الثابت المعرف في الكائن <code>enum</code> الذي استُدعي معها كما سُمّي أُثناء تعريف هذا الكائن.


=== <code>[[Kotlin/Enum/ordinal|ordinal]]</code> ===
=== <code>[[Kotlin/Enum/ordinal|ordinal]]</code> ===
تعيد الخاصية <code>ordinal</code> ترتيب الثابت من الكائن <code>enum</code> الذي استُدعيت عبره  enumeration constant‎)‎‎)، أي ترتيبها في تصريح الكائن <code>enum،</code>بحيث تأخذ المُركّبة الأولى العدد <code>0</code>.
تمثل ترتيب (ordinal) الثابت المعرف في الكائن <code>enum</code> الذي استُدعي معها.


== الدوال ==
== الدوال ==


=== <code>[[Kotlin/Enum/clone|clone]]</code> ===
=== <code>[[Kotlin/Enum/clone|clone]]</code> ===
يطلق التابع <code>clone()</code>‎ استثناءً (exception) لأنّ ثوابت enum  لا يمكن أن تُنسخ. هذا التابع يمنع الأصناف من النوع <code>[[Kotlin/Enum/index|Enum]]</code> من أن ترِث من الصنف<code>Cloneable</code>.
ترمي هذه الدالة استثناءً لأنّ ثوابت الصنف <code>Enum</code> لا يمكن أن تُنسخ. تمنع هذه الدالة الأصناف ذات النوع <code>Enum</code> من أن ترِث من الصنف <code>Cloneable</code>.


=== <code>[[Kotlin/Enum/compareTo|compareTo]]</code> ===
=== <code>[[Kotlin/Enum/compareTo|compareTo]]</code> ===
تقارن الدالة<code>compareTo()‎</code> بين قيمة العنصر الذي استُدعيت عبره والقيمة المُمرّرة، إذ تعيد القيمة <code>0</code> إن كانا متساويين، أو تعيد قيمة سلبية إن كانت قيمة العنصر الذي استُدعيت عبره أصغر من القيمة المُمرّرة، أو تعيد قيمة موجبة إن كانت قيمة العنصر الذي استُدعيت عبره أكبر من القيمة المُمرّرة .
توازن هذه الدالة بين الكائن الذي استُدعي معها والكائن المُمرّر إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كان الكائن الأول (أي الذي استُدعي معها) أصغر من الكائن الثاني، أو قيمة موجبة إن كان الكائن الأول أكبر من الكائن الثاني.


=== <code>[[Kotlin/Enum/equals|equals]]</code> ===
=== <code>[[Kotlin/Enum/equals|equals]]</code> ===
تبين الدالة <code>equals()</code>‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت عبره.
تتحقق هذه الدالة إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعي معها.
 
 
=== <code>[[Kotlin/Enum/hashCode|hashCode]]</code> ===
=== <code>[[Kotlin/Enum/hashCode|hashCode]]</code> ===
يعيد التابع <code>hashCode()</code>‎ قيمة الشيفرة hash code الخاصّة بالكائن الذي استُدعي عبره.
تعيد هذه الدالة الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها.
 
 
=== <code>[[Kotlin/Enum/toString|toString]]</code> ===
=== <code>[[Kotlin/Enum/toString|toString]]</code> ===
يعيد التابع <code>toString()</code>‎ تمثيلا نصيا للكائن الذي استُدعيت عبره.
تحول هذه الدالة الكائن الذي استُدعي معها إلى سلسلة نصية (String).
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Classes]]
[[تصنيف:Kotlin Classes]]
[[تصنيف:Kotlin Enum]]
[[تصنيف:Kotlin Enum]]

مراجعة 11:37، 16 أغسطس 2018

يعدُّ الصنف Enum الصنف الأساس لكل أصناف الترقيم (enum classes). إن أردت الاطلاع على معلومات أوسع حول أصناف الترقيم، فاقرأ هذا المرجع.

abstract class Enum<E : Enum<E>> : Comparable<E> (source)

الدوال البانية

<init>

يعدُّ الصنف Enum الصنف الأساس لكل أصناف الترقيم (enum classes). إن أردت الاطلاع على معلومات أوسع حول أصناف الترقيم، فاقرأ هذا المرجع.

الخاصيات

name

تمثل اسم الثابت المعرف في الكائن enum الذي استُدعي معها كما سُمّي أُثناء تعريف هذا الكائن.

ordinal

تمثل ترتيب (ordinal) الثابت المعرف في الكائن enum الذي استُدعي معها.

الدوال

clone

ترمي هذه الدالة استثناءً لأنّ ثوابت الصنف Enum لا يمكن أن تُنسخ. تمنع هذه الدالة الأصناف ذات النوع Enum من أن ترِث من الصنف Cloneable.

compareTo

توازن هذه الدالة بين الكائن الذي استُدعي معها والكائن المُمرّر إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كان الكائن الأول (أي الذي استُدعي معها) أصغر من الكائن الثاني، أو قيمة موجبة إن كان الكائن الأول أكبر من الكائن الثاني.

equals

تتحقق هذه الدالة إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعي معها.

hashCode

تعيد هذه الدالة الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها.

toString

تحول هذه الدالة الكائن الذي استُدعي معها إلى سلسلة نصية (String).