کار با کلاس‌های انتزاعی (Kotlin Abstract Classes)

کار با کلاس‌های انتزاعی (Kotlin Abstract Classes)

تمام ویدیوهای دوره رایگان آموزش صفر تا صد برنامه‌نویسی کاتلین (Kotlin)
آموزش مفاهیم اولیه و نصب نرم‌افزار‌های مورد نیاز
آشنایی با مباحث پایه برنامه‌نویسی
آموزش شرط‌ها در کاتلین
آموزش حلقه‌ها (Loops) و آرایه‌ها در کاتلین
یادگیری عمیق‌تر
آموزش کار با توابع
آموزش شی‌گرایی در کاتلین
مفهوم وراثت در شی‌گرایی
آرایه‌ها و لیست‌های داینامیک
ورود عمیق‌تر به دانش کاتلین

در کاتلین برای ایجاد کلاس‌های انتزاعی از کلمه کلیدی abstract قبل از کلمه class استفاده می‌کنند. از یک کلاس abstract نمی‌توان نمونه سازی کرد. به این معنا که نمی‌توان آبجکتی از آن ساخت.

نحوه تعریف abstract class:

abstract class className { }

 

مواردی که باید به آن‌ها توجه داشت:

  • از یک abstract class نمی‌توان object ساخت
  • همه متغیر‌ها و متد‌های یک کلاس abstract به صورت پیشفرض abstract نیستند؛ مگر اینکه قبل از تعریف آن‌ها از کلمه abstract استفاده شود
  • اگر کلاسی را abstract کردیم، نیازی به نوشتن کلمه open نیست زیرا یک abstract به صورت پیشفرض open است
  • یک متد abstract بدنه ندارد و باید بدنه آن در کلاس‌هایی که این کلاس abstract را مشتق کرده‌اند، تعریف شود
abstract class className(val x: String) { // Non-Abstract Property abstract var y: Int // Abstract Variable fun function2() { // Non-Abstract Method println("Non abstract function") } abstract fun function1() // Abstract Method }

 

سوالات رایج

ممکن است پاسخ سوال شما درباره ویدیوی کار با کلاس‌های انتزاعی (Kotlin Abstract Classes) در اینجا باشد.

کلاسی که با کلمه کلیدی abstract در قبل از کلمه class تعریف شده باشد، اصطلاحا کلاس انتزاعی (abstract) گفته می‌شود. از یک کلاس انتزاعی نمی‌توان شی (Object) ساخت. متد‌ها و ویژگی‌های کلاس انتزاعی، غیرانتزاعی هستند مگر اینکه به صراحت به عنوان انتزاعی (abstract) اعلام شده باشند.

همانند جاوا، از کلمه کلیدی abstract برای اعلام کلاس‌های انتزاعی در کاتلین استفاده می‌شود. نمی‌توان از کلاس‌های abstract شی (Object) ساخت اما می‌توان از آن‌ها برای ایجاد ویژگی‌های اختیاری و اجباری در کلاس‌هایی که از کلاس abstract مشتق (extend) می‌شوند، استفاده کرد.
ارسال نظر :
پاسخ به