شکل سوم ارثبری، ارثبری سلسلهمراتبی در سیشارپ است
درسی شارپ ، ارثبری سلسلهمراتبی (Hierarchical Inheritance) یک الگوی کاربردی است که در آن چندین کلاس فرزند از یک کلاس والد مشترک ارثبری میکنند. این روش به شما کمک میکند تا از تکرار کد جلوگیری کنید و منطق مشترک را در یک مکان متمرکز کنید.
مثال کاربردی: دنیای حیوانات
فرض کنید کلاس پایه Animal را داریم که دارای متد عمومی Eat() میباشد. سپس دو کلاس Dog و Cat از این کلاس ارثبری میکنند و هرکدام رفتارهای خاص خود Bark() و Meow() را اضافه میکنند:
public class Animal
{
public void Eat() => Console.WriteLine("Eating...");
}
public class Dog : Animal
{
public void Bark() => Console.WriteLine("Barking...");
}
public class Cat : Animal
{
public void Meow() => Console.WriteLine("Meowing...");
}
نحوه استفاده : وقتی یک شیء از نوع Cat یا Dog ایجاد میکنید، میتوانید هم از متدهای کلاس والد (Animal) و هم از متدهای اختصاصی خود استفاده کنید:
var cat = new Cat();
cat.Eat(); // خروجی: "Eating..." (از Animal)
cat.Meow(); // خروجی: "Meowing..." (مخصوص Cat)
var dog = new Dog();
dog.Eat(); // خروجی: "Eating..."
dog.Bark(); // خروجی: "Barking..."
چرا ارثبری سلسلهمراتبی مفید است؟
کاهش تکرار کد: متدهای مشترک (مثل Eat() فقط یک بار نوشته میشوند.
افزایش خوانایی و نظم: ساختار کد شفافتر و منطقیتر میشود.
سهولت در نگهداری: تغییر در کلاس والد به صورت خودکار به تمام کلاسهای فرزند اعمال میشود.
اگر میخواهید یک معماری منعطف و تمیز داشته باشید، ارثبری سلسلهمراتبی میتواند یکی از بهترین انتخابها باشد.