پس از يادگيري کلاسها و اشياء، گام بعدي در برنامه نويسي شيءگرا در C# آشنايي با مفاهيم وراثت و چندريختي (Polymorphism) است. اين مفاهيم امکان ايجاد کلاسهاي پايه و مشتق و مديريت رفتارهاي مختلف با استفاده از يک رابط مشترک را فراهم ميکنند.
وراثت در C#
تعريف وراثت
وراثت به شما امکان ميدهد يک کلاس جديد از کلاس موجود ايجاد کنيد و ويژگيها و متدهاي کلاس پايه را به ارث ببريد. اين کار باعث کاهش تکرار کد و سازماندهي بهتر ميشود.
نمونه کلاس پايه و مشتق
class Animal
{
public void Eat()
{
Console.WriteLine("اين حيوان غذا مي خورد");
}
}
class Dog : Animal
{
public void Bark()
{
Console.WriteLine("سگ پارس مي کند");
}
}
Dog dog = new Dog();
dog.Eat(); // خروجي: اين حيوان غذا مي خورد
dog.Bark(); // خروجي: سگ پارس مي کند
چندريختي (Polymorphism)
تعريف Polymorphism
چندريختي به شما امکان ميدهد يک شيء از کلاس مشتق، رفتار متد کلاس پايه را به روش خود بازنويسي کند. اين مفهوم باعث انعطاف پذيري و قابليت توسعه برنامه ميشود.
نمونه Polymorphism با متدهاي مجازي
class Animal
{
public virtual void Speak()
{
Console.WriteLine("حيوان صدا توليد مي کند");
}
}
class Dog : Animal
{
public override void Speak()
{
Console.WriteLine("سگ پارس مي کند");
}
}
Animal myDog = new Dog();
myDog.Speak(); // خروجي: سگ پارس مي کند
مزاياي وراثت و چندريختي
کاهش تکرار کد
با استفاده از وراثت ميتوانيد ويژگيها و متدهاي مشترک را در کلاس پايه تعريف کرده و در کلاسهاي مشتق به ارث ببريد.
افزايش انعطاف پذيري
چندريختي به شما امکان ميدهد کدهاي منعطف و قابل توسعه بنويسيد و رفتار اشياء را بدون تغيير کلاس پايه تغيير دهيد.
تمرين عملي
ايجاد کلاسهاي مشتق
چند کلاس مشتق از کلاس Animal بسازيد و متد Speak را براي هر کلاس بازنويسي کنيد تا با مفهوم Polymorphism آشنا شويد.
ترکيب با ليستها و متدها
اشياء کلاسهاي مشتق را در يک ليست ذخيره کنيد و با حلقه foreach متد Speak را فراخواني کنيد تا رفتارهاي مختلف را مشاهده کنيد.
ادامه مسير يادگيري C#
منابع آموزشي
براي يادگيري عميق مفاهيم شيءگرا در C# و تمرين مثالهاي عملي ميتوانيد از سايت LearnDun استفاده کنيد. دوره آموزش و يادگيري C# از مقدماتي تا پيشرفته مسير کامل شما را تا سطح حرفهاي همراهي ميکند.
جمع بندي
وراثت و چندريختي ابزارهاي قدرتمند برنامه نويسي شيءگرا در C# هستند. با يادگيري نحوه استفاده از کلاسهاي پايه و مشتق و بازنويسي متدها ميتوانيد برنامههاي انعطاف پذير، حرفهاي و قابل توسعه بنويسيد.



دیدگاه و پرسش