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

4 سال پیش
کلاس داده در برنامه نویسی کاتلین 
امتیاز دهید post

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

در این درس 26 از مجموعه آموزش های برنامه نویسی سایت سورس باران، با کلاس داده در برنامه نویسی کاتلین (Data Class) و نحوه ایجاد آن آشنا خواهید شد. همچنین شما در مورد الزاماتی که کلاس داده باید برآورده کند و ویژگیهای استاندارد آن را فرا خواهید گرفت.

ممکن است شرایطی پیش بیاید که شما فقط برای نگهداری داده ها نیاز به ایجاد کلاس داشته باشید. در چنین شرایطی، می توانید کلاس را به عنوان data (داده) علامت گذاری کنید تا یک کلاس داده ایجاد کنید. مثلا،

 

برای این کلاس، کامپایلر به طور خودکار موارد زیر را تولید می کند:

  • تابع ()copy، جفت ()equals و ()hashCode و ()toString از سازنده اولیه ایجاد می‌شوند.
  • تابع‌های ()componentN نیز ساخته می‌شوند.

قبل از اینکه به طور مفصل درباره این ویژگی ها صحبت کنیم ، بیایید در مورد الزاماتی که یک کلاس داده باید برآورده کند صحبت کنیم.

 

الزامات کلاس داده در کاتلین

در اینجا شرایط لازم وجود دارد:

سازنده اولیه باید حداقل یک پارامتر داشته باشد.
پارامترهای سازنده اولیه باید به صورت Val (فقط خواندنی) یا Var (خواندن-نوشتن) علامت گذاری شوند.
کلاس نمی تواند  open ،abstract ،inner و یا sealed باشد.
کلاس ممکن است کلاسهای دیگر را گسترش دهد یا اینترفیس ها را پیاده سازی کند. اگر از نسخه قبل از 1.1  کاتلین استفاده می کنید، کلاس فقط می تواند اینترفیس ها را پیاده سازی کند.

 

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

 

خروجی کد به شکل زیر می باشد؛

 

وقتی کلاس داده ای را اعلان می کنید، کامپایلر به طور خودکار چندین تابع مانند ()toString() ،equals() ،hashcode و غیره را در پس‌ زمینه تولید می‌ کند این به شما کمک می کند تا کد را مختصر و منسجم نگه دارید. اگر از جاوا استفاده می کردید، برای انجام این کار باید کدهای زیادی را بنویسید.

بیایید از این توابع استفاده کنیم:

Copying

برای یک کلاس داده، می توانید با استفاده از تابع copy () یک کپی از یک شی با برخی از خصوصیات آن متفاوت ایجاد کنید. نحوه کار آن در اینجا به صورت زیر است:

 

خروجی کد به شکل زیر می باشد؛

 

toString() method

تابع () toString نمایش رشته ای از شی را بازگشت می دهد.

 

خروجی کد به شکل زیر می باشد؛

 

()hashCode() and equals

متد ()hasCode  کد هش را برای بازگشت یک شی می باشد. اگر دو شی برابر باشند، ()hashCode  نتیجه صحیح یکسانی را ایجاد می کند.

اگر دو جسم برابر باشند متد () hashCode مقدار () true را بازگشت می دهد. اگر اشیا برابر نباشند، متد ()equals مقدار false بازگشت می‌دهد.

 

خروجی کد به شکل زیر می باشد؛

تخریب اعلان ‌ها در برنامه نویسی کاتلین

با استفاده از تخریب اعلان ها می توانید یک شی را به تعدادی از متغیرها تبدیل کنید. به عنوان مثال:

 

خروجی کد به شکل زیر می باشد؛

 

این امکان وجود داشت زیرا کامپایلر توابع کامپوننت () را برای کلیه کلاسهای داده ایجاد می کند. مثلا:

به دلیل اینکه کامپایلر همه مشخصه ‌های تابع ‌های ()componentN را برای کلاس داده تولید می‌کند، می توان از این روش استفاده کرد. به مثال زیر توجه کنید:

 

خروجی کد به شکل زیر می باشد؛

 

منبع.

لیست جلسات قبل آموزش برنامه نویسی کاتلین

  1. معرفی کاتلین،  Kotlin Hello World – اولین برنامه کاتلین
  2. انواع متغیرهای پایه در کاتلین
  3. عملگرهای برنامه نویسی کاتلین
  4. تبدیل نوع در برنامه نویسی کاتلین
  5. عبارت ها، گزاره ها و بلوک ها در برنامه نویسی کاتلین
  6. کامنت ها در برنامه نویسی کاتلین
  7. ورودی / خروجی پایه در برنامه نویسی کاتلین
  8. عبارت if در برنامه نویسی کاتلین
  9. عبارت when در برنامه نویسی کاتلین
  10. حلقه های while و do … while در برنامه نویسی کاتلین
  11. حلقه for در برنامه نویسی کاتلین
  12. عبارت break در برنامه نویسی کاتلین
  13. عبارت continue در برنامه نویسی کاتلین
  14. توابع در برنامه نویسی کاتلین
  15. فراخوانی تابع میانوندی در برنامه نویسی کاتلین
  16. آرگومان ‌های پیش ‌فرضآرگومان ‌های پیش ‌فرض و نام ‌دار در برنامه نویسی کاتلین
  17. توابع بازگشتی در برنامه نویسی کاتلین
  18. کلاس و شی در برنامه نویسی کاتلین
  19. سازنده ها در برنامه نویسی کاتلین
  20. Getter ها و Setter ها در برنامه نویسی کاتلین
  21. وراثت در برنامه نویسی کاتلین 
  22. مادیفایرهای نمایانی در برنامه نویسی کاتلین
  23. کلاس مجرد در برنامه نویسی کاتلین
  24. اینترفیس های برنامه نویسی کاتلین
  25. کلاس‌ های تودرتو و داخلی در برنامه نویسی کاتلین
امتیاز دهید post
0
برچسب ها :
نویسنده مطلب saber

دیدگاه شما

بدون دیدگاه