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

من موسوعة حسوب
< Kotlin‏ | Enum
مراجعة وتدقيق.
طلا ملخص تعديل
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:الدالة <code>Enum.clone()‎</code> في Kotlin}}</noinclude>
<noinclude>{{التابع <code>Enum.clone()‎</code> في Kotlin}}</noinclude>
ترمي الدالة <code>clone()</code>‎ استثناءً لأنّ ثوابت الصنف [[Kotlin/Enum|<code>Enum</code>]] لا يمكن أن تُنسخ. تمنع هذه الدالة الأصناف ذات النوع <code>[[Kotlin/Enum|Enum]]</code> من أن ترِث من الصنف <code>Cloneable</code>.  
يرمي التابع <code>clone()</code>‎ استثناءً لأنّ ثوابت الصنف [[Kotlin/Enum|<code>Enum</code>]] لا يمكن أن تُنسخ. تمنع هذه الدالة الأصناف ذات النوع <code>[[Kotlin/Enum|Enum]]</code> من أن ترِث من الصنف <code>Cloneable</code>.  


== البنية العامة ==
== البنية العامة ==
سطر 8: سطر 8:
</syntaxhighlight>
</syntaxhighlight>
== أمثلة ==
== أمثلة ==
يؤدي استعمال الدالة <code>clone()</code>‎ في المثال التالي إلى رمي استثناء:<syntaxhighlight lang="kotlin">
يؤدي استعمال التابع <code>clone()</code>‎ في المثال التالي إلى رمي استثناء:<syntaxhighlight lang="kotlin">
fun main(args: Array<String>) {
fun main(args: Array<String>) {
     val x = ColorEnum.Red
     val x = ColorEnum.Red
سطر 29: سطر 29:


== مصادر ==
== مصادر ==
* [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-enum/clone.html صفحة الدالة Enum.clone()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
* [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-enum/clone.html صفحة التابع Enum.clone()‎ في التوثيق الرسميّ للمكتبة القياسيّة في لغة Kotlin.]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin]]
[[تصنيف:Kotlin Method]]
[[تصنيف:Kotlin Method]]

مراجعة 06:39، 29 أغسطس 2018

{{التابع Enum.clone()‎ في Kotlin}} يرمي التابع 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 الخاصّة بالكائن الذي استُدعي معها

مصادر