ساخت کلاس های enum در کاتلین | آموزش مقدماتی کاتلین | درس بیست و چهارم

کلاس های enum در کاتلین چیست و چرا ما از enum استفاده می‌کنیم ؟

کلاس های enum در کاتلین برای نمایش مجموعه ‌ثابت از مقادیر مرتبط استفاده می‌شوند. به عنوان مثال، می‌توانید از یک کلاس enum برای نشان دادن روزهای هفته، رنگ‌ها یا رتبه‌های مختلف استفاده کنید. برای مثال : شما یک کلاس enum برای رنگ درست می‌کنید و در آن مقادیر دلخواه خود را قرار می‌دهید و این مقادیر ثابت هستند و از جاهای مختلف نیز می‌توانید به آنها دسترسی داشته باشید.

به توضیحی بیشتر در برنامه نویسی، گاهی اوقات نیاز به یک نوع وجود دارد که فقط مقادیر خاصی داشته باشد. برای انجام این کار، مفهوم شمارش معرفی شد. Enumeration یک لیست نامگذاری شده از ثابت ها است.
در کاتلین، مانند بسیاری از زبان های برنامه نویسی دیگر، enum نوع تخصصی خود را دارد که نشان می دهد چیزی دارای تعدادی مقادیر ممکن است. بر خلاف enums جاوا، enum های Kotlin کلاس هستند.

چند نکته مهم در مورد کلاس های enum در کاتلین :

  1. ثابت‌های Enum فقط مجموعه‌ای از ثابت‌ها نیستند، اینها دارای ویژگی‌ها، روش‌ها و غیره هستند
  2. هر یک از ثابت های enum به عنوان نمونه های جداگانه کلاس عمل می‌کنند و با کاما از هم جدا می‌شوند.
  3. Enums خوانایی کد شما را با اختصاص نام های از پیش تعریف شده به ثابت ها افزایش می‌دهد.
  4. نمونه ای از کلاس enum را نمی‌توان با استفاده از سازنده ایجاد کرد.

مطالب مرتبط : کلاس های داده در کاتلین | آموزش مقدماتی کاتلین | درس بیست و سوم

 کلاس enum در کاتلین به چه صورتی تعریف می‌شود:

برای تعریف یک کلاس enum، از کلیدواژه enum به دنبال نام کلاس و آکولاد استفاده می‌کنیم. و در داخل آکولاد، مقادیر enum را به عنوان ثابت لیست می‌کنیم.

نحوی تعریف کلاس enum در کاتلین به چه صورتی می‌باشد ؟

تعریف کلاس enum در کاتلین

در این مثال، Color یک کلاس enum با مقادیر RED, GREEN,BLUE,ORANGE,BROWN,YELLOW, TURQUOISE است.

نحوی دسترسی به مقادیر کلاس enum  در کاتلین :

می‌توانید با استفاده از نقطه (.) به مقادیر enum دسترسی پیدا کنید.

نحوی دسترسی به مقادیر داخل کلاس enum در برنامه نویسی کاتلین

دسترسی به مقادیر کلاس enum

مطالب مرتبط : کلاس abstract در کاتلین | آموزش مقدماتی کاتلین | درس بیست و یکم

توابع کاربردی در کلاس های  enum در برنامه نویسی کاتلین:

کلاس‌های enum تعدادی تابع مفید را ارائه می‌دهند، از جمله :

  • ()values: لیستی از تمام مقادیر enum را برمی‌گرداند.
  • ()valueOf: یک مقدار enum را با نام آن جستجو می‌کند و برمی‌گرداند.
  • ()ordinal: موقعیت یک مقدار enum را در لیست مقادیر برمی‌گرداند.
  • ()name: نام یک مقدار enum را برمی‌گرداند.

در قسمت پایین چندین مثال کاربردی از کلاس های enum در کاتلین را برای شما آوردیم .

مثال های کاربردی از کلاس های enum

مثال برای کلاس های enum در کاتلین

در این مثال، Size یک کلاس enum با سه مقدار SMALL، MEDIUM و LARGE است. هر مقدار دارای یک value مرتبط است. کد نمونه، مقدار value، name و یک مقدار enum را با استفاده از ()valueOf چاپ می‌کند.

 

مطالب مرتبط : کلاس‌ های تو در تو یا Nested Classes در کاتلین | آموزش مقدماتی کاتلین | درس 18

مثالی پیشرفته  استفاده از enum در switch-case:

مثال پیشرفته از نحوی استفاده از کلاس enum در موارد پیشرفته

استفاده از enum در switch-case

در این مثال، OrderStatus یک enum است که چهار ثابت دارد: PLACED، SHIPPED، DELIVERED و CANCELED. orderStatus یک متغیر است که از نوع OrderStatus است. مقدار آن به ثابت SHIPPED enum اختصاص داده شده است. سپس، یک عبارت when برای بررسی مقدار orderStatus استفاده می شود. اگر orderStatus برابر با PLACED باشد، “سفارش شما ثبت شده است” چاپ می شود. اگر orderStatus برابر با SHIPPED باشد، “سفارش شما ارسال شده است” چاپ می شود و به همین ترتیب.

مزایای استفاده از کلاس‌های enum در برنامه نویسی کاتلین چه چیز های است:

  • خوانایی کد را افزایش می‌دهند: به جای استفاده از اعداد ثابت، می‌توانید از نام‌های توصیفی برای مقادیر enum استفاده کنید.
  • امنیت نوع را افزایش می‌دهند: کامپایلر کاتلین تضمین می‌کند که فقط از مقادیر enum معتبر استفاده کنید.
  • کد را مختصرتر می‌کنند: می‌توانید از توابع مرتبط با enum برای ساده‌تر کردن کد خود استفاده کنید.

خلاصه مطالب

کلاس های enum در کاتلین برای زمانی استفاده می‌شود که ما یکسری مقادیر ثابت مانند ایام هفته و رنگ و … داریم و که به همدیگر مرتبط هستند و قصد نمایش آنها را داریم .

مطالب پربازدید : کاتلین چیست و چه مزیت هایی را نسبت به زبان های دیگر دارد؟

برای امتیاز به این نوشته کلیک کنید!
[کل: 5 میانگین: 5]
اشتراک‌گذاری

من فرشید حبیبی هستم، یک برنامه نویس موبایل با بیش از 5 سال تجربه. من علاقه زیادی به برنامه نویسی دارم و در این زمینه به طور مداوم در حال یادگیری و پیشرفت هستم. در حال حاضر، به عنوان یک برنامه نویس اندروید در یک شرکت معتبر مشغول به کار هستم و همچنین یک وبسایت آموزشی به نام کدایت را اداره می کنم. در کدایت، به تولید محتوای آموزشی در مورد برنامه نویسی اندروید و وب می پردازیم. هدف من از ایجاد این وبسایت، کمک به سایر برنامه نویسان اندرویدی برای یادگیری و پیشرفت در این زمینه است.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *