الفرق بين المراجعتين لصفحة: «Kotlin/Enum/clone»
جميل-بيلوني (نقاش | مساهمات) لا ملخص تعديل |
جميل-بيلوني (نقاش | مساهمات) مراجعة وتدقيق. |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE: | <noinclude>{{DISPLAYTITLE:الدالة <code>Enum.clone()</code> في Kotlin}}</noinclude> | ||
ترمي الدالة <code>clone()</code> استثناءً لأنّ ثوابت الصنف <code> | ترمي الدالة <code>clone()</code> استثناءً لأنّ ثوابت الصنف [[Kotlin/Enum|<code>Enum</code>]] لا يمكن أن تُنسخ. تمنع هذه الدالة الأصناف ذات النوع <code>[[Kotlin/Enum|Enum]]</code> من أن ترِث من الصنف <code>Cloneable</code>. | ||
== البنية العامة == | == البنية العامة == | ||
سطر 25: | سطر 25: | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* | * الدالة <code>[[Kotlin/Enum/compareTo|compareTo()]]</code> بين الكائن الذي استُدعي معها والكائن المُمرّر إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كان الكائن الأول (أي الذي استُدعي معها) أصغر من الكائن الثاني، أو قيمة موجبة إن كان الكائن الأول أكبر من الكائن الثاني. | ||
* | * الدالة [[Kotlin/Enum/hashCode|<code>hashCode()</code>]]: تعيد الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها | ||
== مصادر == | == مصادر == |
مراجعة 11:24، 16 أغسطس 2018
ترمي الدالة clone()
استثناءً لأنّ ثوابت الصنف Enum
لا يمكن أن تُنسخ. تمنع هذه الدالة الأصناف ذات النوع Enum
من أن ترِث من الصنف Cloneable
.
البنية العامة
protected fun clone(): Any
أمثلة
يؤدي استعمال الدالة clone()
في المثال التالي إلى رمي استثناء:
fun main(args: Array<String>) {
val x = ColorEnum.Red
val y = x.clone() // Error:(3, 14) Cannot access 'clone': it is protected in 'ColorEnum'
}
enum class ColorEnum(val colorCode: Int)
{
Red(2),
Blue(11212),
Green(21212),
Orange(212121)
}
انظر أيضًا
- الدالة
compareTo()
بين الكائن الذي استُدعي معها والكائن المُمرّر إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كان الكائن الأول (أي الذي استُدعي معها) أصغر من الكائن الثاني، أو قيمة موجبة إن كان الكائن الأول أكبر من الكائن الثاني. - الدالة
hashCode()
: تعيد الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها