الوراثة في لغة البرمجة كوتلن Kotlin Inheritance

اقرأ في هذا المقال


الوراثة في لغة البرمجة كوتلن – Inheritance In Kotlin:

يعتبر مفهوم الوراثة أحد الميزات المهمة التي يتم الاستفادة منها في لغات البرمجة الموجهة للكائنات (Object Oriented Programming)؛ حيث يتيح مفهوم الوراثة إمكانية إعادة استخدام التعليمات البرمجية (codes) من غير الحاجة إلى إعادة كتابتها في كل مرة نحتاجها؛ فهو يسمح بوراثة الميزات والخصائص من الفئة الأساسية (Base class) إلى فئة جديدة تسمى الفئة المشتقة (Derived class)، ويمكن أن ترث الفئة المشتقة كافة ميزات وخصائص الفئة الأساسية، ويمكن إضافة بعض الميزات الخاصة بها أيضاً حسب حاجة المستخدم، وهذا يوفر الكثير من الوقت والجهد للمستخدم.

الصيغة العامة لمفهوم الوراثة في لغة البرمجة كوتلن – Syntax Of Inheritance In Kotlin:

للسماح لفئات معينة (classes) وراثة خصائص ومزايا من فئة أساسية (Super Class)، فإنه يجب على المستخدم جعل الفئة الأساسية مفتوحة (Open) لنتمكن من استخدامها، والصيغة العامة لاستخدام مفهوم الوراثة في لغة البرمجة كوتلن كما يلي:

} (open class baseClass (x: int

{

} (class derivedClass (x: int) : baseClass(x

{

مفهوم الـ Override في لغة البرمجة كوتلن:

تكمن أهمية هذا المفهوم في لغات البرمجة، بأنه يتيح فرصة للمستخدمين بإنشاء دالة (function) في الصنف المُشتق هي نفسها موجودة في الصنف الأساسي؛ حيث يتم تعريف الدالة التي ورثها الصنف المشتق (Derived class) من الصنف الرئيسي (Super Class) من جديد؛ حيث تكون مُماثلة للدالة الموروثة من حيث الشكل؛ أي أن لها نفس الاسم والنوع وعدد الـ (parameters)، ولكن من الممكن أن يكون هنالك اختلاف في المحتوى، وللاستفادة من هذا المفهوم في لغة البرمجة كوتلن يتم استخدام الكلمة المفتاحية (override)، كما ويجب أيضاً أن نجعل الدالة (function) في التصنيف الموروث (open) حتى نتمكن من استخدامها والاستفادة منها.

مصطلحات مهمة في الوراثة لغة البرمجة كوتلن:

  • التصنيف الأساسي (Super class): وهو التصنيف الرئيسي ويُسمى أحياناً (parent class) أو (Base Class)، والذي يحتوي على مجموعة من الخصائص والدوال (functions)، والتي يتم استخدام خصائصها ووظائفها الموروثة بواسطة فئة أخرى.
  • التصنيف الفرعي (Child Class): وهو التصنيف الذي يرث خصائص ووظائف من التصنيف الرئيسي ويسمى أيضاً بـ (Derived Class) أو (Sub Class).

شارك المقالة: