با آموزشی دیگر از مجموعه آموزش مقدماتی کاتلین از کدایت در خدمت شما هستیم . در کاتلین، یک کلاس abstract در کاتلین نوعی کلاس است که نمیتوانید از آن به طور مستقیم نمونهسازی کنید. این کلاسها به عنوان بلوکهای ساختاری برای کلاسهای فرعی عمل میکنند و وظایف و ویژگیهای مشترکی را که کلاسهای فرعی باید پیادهسازی کنند، تعریف میکنند.
ویژگیهای کلیدی کلاسهای abstract در کاتلین چیست ؟
- کلمه کلیدی abstract: برای تعریف یک کلاس به عنوان abstract از کلمه کلیدی
abstract
قبل از کلمهclass
استفاده میشود. - توابع abstract: یک کلاس abstract میتواند شامل توابع abstract باشد که هیچ پیادهسازی در خود کلاس ندارند. کلاسهای فرعی موظف به پیادهسازی این توابع abstract هستند.
- عدم امکان نمونهسازی: شما نمیتوانید به طور مستقیم از یک کلاس abstract نمونه ایجاد کنید.
- وراثت: کلاسهای abstract برای وراثت و اشتراکگذاری کد بین کلاسهای مرتبط مفید هستند.
مطالب مرتبط:ارث بری در کاتلین | آموزش مقدماتی کاتلین | درس بیستم
مزایای استفاده از کلاسهای انتزاعی در کاتلین چیست ؟
- کد را سازماندهی میکند: کلاسهای abstract به شما کمک میکنند تا کد خود را به طور منطقی سازماندهی کنید و مفاهیم انتزاعی را در برنامه خود نشان دهید.
- قابلیت استفاده مجدد را افزایش میدهد: با استفاده از کلاسهای abstract، میتوانید از کد به طور مکرر در برنامه خود بدون نیاز به تکرار خودتان استفاده کنید.
- پایهای برای پیادهسازیها فراهم میکند: کلاسهای abstract یک چارچوب را برای کلاسهای فرعی ارائه میکنند تا پیادهسازیهای خاص خود را بر اساس آن بنا کنند
یک مثال ساده از نحوی پیاده سازی کلاس abstract در کاتلین :
در این مثال، کلاس Animal
یک کلاس abstract است که دارای یک تابع abstract به نام makeSound()
است. این تابع هیچ پیادهسازی در کلاس Animal
ندارد. دو کلاس فرعی، Dog
و Cat
، از کلاس Animal
ارثبری میکنند و پیادهسازیهای خاص خود را برای تابع makeSound()
ارائه میکنند.
این یک نمونه ساده از نحوه استفاده از کلاسهای انتزاعی در کاتلین است. کلاسهای abstract میتوانند برای مدلسازی انواع مختلف روابط و سلسله مراتب در برنامههای پیچیدهتر استفاده شوند.
مطالب مرتبط : کلاس های تو در تو یا Nested Classes در کاتلین | آموزش مقدماتی کاتلین | درس 18
دیدگاهتان را بنویسید