از سری مباحث آموزش مقدماتی کاتلین در خدمت شما عزیزان هستیم .در زبان برنامه نویسی کاتلین، کلاس ها بلوک های اساسی شی گرایی هستند.آنها یک طرح کلی برای ایجاد اشیا ارائه می دهند که می توانند دارای داده ها و رفتارهای مشترک باشند. به طور کلی کلاس ها نقش بسیار مهمی در شی گرایی و در کدنویسی ما دارد.
کلاس ها در کاتلین با استفاده از کلمه کلیدی class
تعریف می شوند. بدنه کلاس می تواند شامل داده ها (اعضای داده یا متغیرها)، رفتارها (اعضای تابع یا روش ها) و همچنین کد اولیه (بلاک های init
) باشد.
اعضای داده
اعضای داده یا متغیرها داده هایی هستند که یک کلاس را تشکیل می دهند. آنها می توانند ثابت (با استفاده از کلمه کلیدی val
) یا قابل تغییر (با استفاده از کلمه کلیدی var
) باشند. ما در مباحث قبلی متغیر ها در کاتلین را برای شما عزیزان آموزش دادیم .
اعضای تابع
اعضای تابع یا روش ها رفتارهای یک کلاس را تشکیل می دهند. آنها می توانند توابع عادی، توابع عضو یا توابع استاتیک باشند. برای مطالعه کامل توابع در کاتلین میتوانید به آموزش آن در مباحث قبلی که در کدایت ارئه دادیم مراجعه کنید .
کد اولیه
کد اولیه یک بلاک کد است که در هنگام ایجاد یک شی از یک کلاس اجرا می شود.
مطالب مرتبط : دستورات شرطی else-if در کاتلین | آموزش مقدماتی کاتلین | درس سوم
تعریف کلاس ها در اندروید
بطور کلی کلاس ها بعنوان یکی از رکن های اصلی برنامه نویسی، برای کنترل و مسیر دهی به عملیات های گوناگونی که شما در نظر دارید پیاده سازی میشود تا برنامه شما در شرایط مختلف رفتار های خاصی داشته باشد. فرض کنیم ما میخواهیم یک برنامه مربوط به ریاضیات و برای بررسی محیط و مساحت اشکال مختلف ریاضی بنویسیم . کاری که ما انجام می دهیم این است که برای هر یک از اشکال مورد نظر ، مثلا دایره ، مستطیل ، مربع و … یک کلاس میسازیم و تمامی ویژگی ها(Property) و توابع یا قابلیت های مختلف هر شکل را در داخل آن کلاس تعریف میکنیم.

بدنه ی کلاس ها در اندروید
شکل بالا، نشان دهنده یک کلاس با نام Point که دارای متغیر های x , y میباشد که ویژگی های این کلاس می باشند و یک تابع move که نشان دهنده رفتار آن است . همچنین این کلاس در پارانتز روبه روی خود دو مقدار نیز از ورودی دریافت می کند.
مطالب مرتبط :دستور Break و Continue در کاتلین | آموزش مقدماتی کاتلین | درس ششم
شی(Object) چیست
شی یک نمونه از یک کلاس است. به عبارت دیگر، شی یک موجودیت فیزیکی یا انتزاعی است که ویژگی ها و رفتارهای یک کلاس را دارد. برای استفاده از کلاس ها ما باید از آن کلاس یک نمونه یا شی بسازیم . در ادامه با طرح مثال هایی کاملا متوجه خواهید شد که شی چیه و چه کاری انجام میدهد.
تفاوت شی و کلاس چیست
تفاوت بین شی و کلاس را می توان به این صورت خلاصه کرد:
- کلاس یک طرح یا نقشه کلی است، در حالی که شی یک نمونه از آن طرح کلی است.
- کلاس یک مفهوم انتزاعی است، در حالی که شی یک مفهوم عینی است.
به طور کلی اگر یک کلاس Point داشته باشیم که نقاطی در صفحه را برای ما نمایش دهد شی یک نقطه خاص در آن صفحه است که دارای ویژگی ها و رفتار های کلاس ما میباشد .

Object ها در مبحث کلاس
همانطور که مشاهده میکنیدما در قسمت آخر عکس بالا یک point به عنوان شی یا نمونه از کلاس Point تعریف کردیم و دوتا نقطه نیز به کلاس Point ارسال کردیم که در آن x را مساوی 10 و y را مساوی 20 در نظر گرفته ایم. یعنی ما برای استفاده از کلاس Point یک شی یا نمونه از آن کلاس را باید میساختیم .
مطالب مرتبط : آرایه ها (Array) در کاتلین چگونه پیاده سازی میشوند | آموزش مقدماتی کاتلین | درس هفتم
سازنده ها در کلاس
در زبان برنامه نویسی کاتلین، سازنده ها توابع عضوی هستند که هنگام نمونه سازی یک شی از یک کلاس فراخوانی می شوند. آنها برای مقداردهی اولیه اعضای داده کلاس استفاده می شوند.
یک کلاس در کاتلین می تواند یک سازنده اصلی و یک یا چند سازنده ثانویه داشته باشد. سازنده اصلی بخشی از اعلان کلاس است و بعد از آن نام کلاس (و نوع پارامترهای آن که اختیاری هستند) نوشته میشود. سازنده های ثانویه با کلمه کلیدی constructor
شروع می شوند. اگر مثال های بالا را مشاهده کنید در مقابل اسم کلاس سازنده اصلی است که دوتا مقدار اولیه x , y را از ما دریافت می کند
سازنده اصلی
سازنده اصلی یک کلاس می تواند بدون پارامتر باشد یا پارامترهای اختیاری داشته باشد. اگر سازنده اصلی پارامتر داشته باشد، باید نوع و مقدار هر پارامتر را مشخص کنید.
سازندگان ثانویه
سازندگان ثانویه می توانند برای ایجاد اشیا با ویژگی های مختلف استفاده شوند. آنها می توانند پارامترهای اختیاری بیشتری داشته باشند یا پارامترهای سازنده اصلی را با مقداردهی اولیه متفاوتی فراخوانی کنند.

چند نمونه از کلاس ها در کاتلین
در کلاس بالا همانطور که مشاهده میکنید کلاس Point دارای یک سازنده ثانویه است که یک مقدار ورودی میگیرد و مقدار دوم را با استفاده از کلمه کلیدی this که مشاهده میکنید 0 در نظر میگیرد. ما از کلاس Point دو تا نمونه درست میکنیم که اولیین Object ما که دوتا ورودی دارد با سازنده اصلی مقدار دهی میشود. و دومین شی ما نیز سازنده فرعی ما در داخل کلاس را فراخوانی میکند و دلیل این کار این است یک مقدار در ورودی خود دارد ولی سازنده اصلی ما دوتا ورودی میگیرد.
اگر سازنده ثانویه در کلاس نداشتیم در هنگام ساخت این نمونه برای ما خطا نشان میداد . که برای رفع آن خطا ، یا باید ورودی دوم را نیز بدهیم و یا با کلمه کلیدی this در مقابل سازنده اصلی یک مقدار پیش فرض برای مقدار دوم در نظر می گرفتیم.
خلاصه مطالب
امروز در این سری از آموزش برنامه نویسی ما یاد گرفتیم که کلاس ها در برنامه نویسی کاتلین چگونه تعریف میشوندو همچنین بدنه کلاس ها از متغیر ها یا ویژگی ها و همچنین توابع یا رفتار های کلاس تشکیل میشود. فهمیدیم که سازنده ها برای مقدار دهی اولیه کلاس ها و هنگام ساختن شی یا نمونه ای از کلاس به آن ها ارسال میشوند
مطالب پربازدید : NDK چیست ؟ و دلیل استفاده از اندروید NDK چیه؟
دیدگاهتان را بنویسید