ABStracفئة t في لغة C# مع مثال
⚡ ملخص ذكي
C# المطلقtracيُعرّف الصنف t مخططًا ترثه الأصناف الأخرى ولكن لا يمكنها إنشاء مثيل له مباشرةً. يشرح هذا المورد abstraction, the abstracالكلمة المفتاحية t، والأساليب الافتراضية، ومثال عملي بلغة C# للفئات الأساسية والفرعية.

ما هو امتصاص العضلات؟tracفئة t في لغة C#؟
ABStracفئة t لا يمكن إنشاء مثيل لها ويتم تمييزها بالكلمة المفتاحية abstracت. أبسtracتحتوي فئة t على صفر أو أكثر من القيم المطلقةtracطرق t فيه. المطلقtracتعمل الفئة t كفئة أساسية وهي مصممة ليتم توريثها بواسطة الفئات الفرعية التي إما تنفذ أو تتجاوز أسلوبها.
هيا نتعلم تمارين البطنtracتعريف فئة t في لغة C# مع مثال موضح أدناه. فيما يلي تعريف فئة تُسمى 'Animal'. عند تعريف فئة 'Animal'، لا توجد معلومات معروفة عن الحيوان، سواء كان كلبًا أو قطة. الدالة المسماة description هي دالة عامة مُعرّفة لهذه الفئة.
الآن بعد أن أصبح معروفًا ما هو الحيوان بالضبط، قمنا بإنشاء فئة أخرى ترث الفئة الأساسية. إذا علمنا أن الحيوان هو في الواقع كلب، فإننا ننشئ فئة كلب ترث الفئة الأساسية الرئيسية. والفرق الرئيسي هنا هو أن فئة الكلاب لا يمكنها تغيير تعريف Descriptطريقة ion الخاصة بفئة Animal. يجب أن تُعرّف طريقة C# الخاصة بهاtracطريقة تسمى Dog-Descriptأيون. هذا هو المفهوم الأساسي للغة سي شاربtracفئات t.
أنشئ عضلات بطنtracفئة t في لغة C#
لنرى عضلات البطنtracشرح فئة t في لغة C# مع أمثلة عملية حول كيفية تعديل الكود الخاص بنا ليشمل فئة مطلقة في C#tracفئة t. لاحظ أننا لن نقوم بتشغيل الكود، لأنه لا يوجد شيء يمكن تشغيله باستخدام C# abstracفئة tion.
الخطوة 1) كخطوة أولى، دعونا ننشئ عضلات بطنtracفئة t. ستُسمى الفئة Tutorial وستحتوي على دالة واحدة فقط. يجب كتابة جميع التعليمات البرمجية في ملف Program.cs.
Code تفسير:-
- نبدأ أولاً بتعريف القيمة المطلقةtracالفئة t. لاحظ استخدام القيمة المطلقةtracالكلمة المفتاحية t. تُستخدم هذه الكلمة للدلالة على أن الفئة مطلقة.tracالفئة t.
- بعد ذلك، نُعرّف دالتنا التي لا تقوم بأي شيء. يجب أن تحتوي الدالة على الكلمة المفتاحية `virtual`. هذا يعني أنه لا يمكن تغيير الدالة بواسطة الفئة الفرعية. هذا شرط أساسي لأي فئة مستقلة.tracالفئة t.
الخطوة 2) الآن دعونا نضيف فئة الطفل لدينا. تتم إضافة هذا الرمز إلى ملف Program.cs.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { abstract class Tutorial { public virtual void Set() { } } class Guru99Tutorial:Tutorial { protected int TutorialID; protected string TutorialName; public void SetTutorial(int pID,string pName) { TutorialID=pID; TutorialName=pName; } public String GetTutorial() { return TutorialName; } static void Main(string[] args) { Guru99Tutorial pTutor=new Guru99Tutorial(); pTutor.SetTutorial(1,".Net"); Console.WriteLine(pTutor.GetTutorial()); Console.ReadKey(); } } }
لا يوجد شيء استثنائي في هذا الكود. نحن فقط نُعرّف فئة تُسمى 'Guru99Tutorial الذي يرث abstracفي فئة البرنامج التعليمي، نقوم بعد ذلك بتعريف نفس الطرق التي كنا نستخدمها من قبل.
ملاحظة:
لا يمكننا هنا تغيير تعريف دالة Set التي تم تعريفها في فئة Tutorial. في فئة Tutorial، قمنا بتعريف دالة باسم 'Set' (public virtual void Set()). بما أن هذه الدالة كانت جزءًا من الفئة الأساسية،tracفي فئة C#، لا يُسمح لنا بتعريف دالة Set مرة أخرى في Guru99Tutorial class.




