خوش آمدید.
در این ویدیو به انواع مختلف وراثت‌ها نگاه خواهیم کرد.
و چهار نوع وجود دارد که C# به‌طور مستقیم از سه نوع پشتیبانی می‌کند.
بنابراین نوع چهارم چیزی است که با استفاده از یک ترفند یا راه‌حل ممکن می‌شود.
می‌توانید بگویید زیرا ما بعداً به آن خواهیم پرداخت.
اما بیایید با سه نوع اول شروع کنیم زیرا آن‌ها ساده‌ترین هستند.
پس شماره یک وراثتی است که ما در اینجا داریم.
بنابراین در مثال ما، ما یک وراثت تک‌سطحی داریم که در آن کلاس حیوان داریم و سپس کلاس وراثت‌گیرنده سگ.
این چیزی است که به آن وراثت تک‌سطحی می‌گویند که یک کلاس از یک کلاس دیگر وراثت می‌گیرد.
اما هیچ کلاس دیگری از آن کلاس دیگر وراثت نمی‌گیرد.
پس همین است.
این عمق وراثتی است که داریم.
با این حال، یک لایه دوم وجود دارد که به آن وراثت چندسطحی می‌گویند.
بنابراین در مثال سگ ما، می‌توانیم یک حیوان/سگ دیگر داشته باشیم که می‌تواند بگوید کالی باشد، خوب؟
خوب.
و این یک سگ خواهد بود.
حالا این کالی یا کالی مرزی از نوع سگ خواهد بود و اعضای خود را خواهد داشت.
بنابراین ویژگی‌های خود، متدهای خود و غیره.
خوب، بنابراین شاید یک کالی این متد را داشته باشد که بسیار فعال باشد، فقط به عنوان یک مثال.
درست است؟
بنابراین public void going nuts.
حداقل این چیزی است که کالی من همیشه انجام می‌داد، فعال بود تا زمانی که او 8 یا 9 ساله شد.
و حتی در آن زمان او بسیار فعال بود تا اینکه در حدود 12 یا 13 سالگی جراحی کرد.
پس حالا این کالی ما در حال رفتن به جنون است.
خوب.
و کالی، به‌هرحال، یک نژاد از حیوان یا نژاد سگ است.
حالا، در این مورد، کالی از سگ وراثت می‌گیرد که به این معنی است که کالی اکنون تمام ویژگی‌های
حیوان و همچنین سگ را دارد.
خوب، بنابراین آنچه که در اینجا داریم نوع دوم وراثت است که وراثت چندسطحی است
که در آن فقط یک سطح ندارید، بلکه یک سطح دوم نیز دارید، شاید حتی یک سطح سوم.
بنابراین آنچه که با استثناها دیدیم این است که لایه‌های دیگری نیز وجود دارد.
بنابراین ما به استثناها نگاه کردیم که سپس این وراثت به نام یا این کلاس مشتق شده به نام استثنای سیستم داشت.
و غیره.
بنابراین تمام راه به استثنای حسابی و سپس استثنای تقسیم بر صفر.
بنابراین این‌ها مثال‌هایی از وراثت چندسطحی بودند.
حالا نوع دیگری وجود دارد که به آن وراثت سلسله‌مراتبی می‌گویند که در آن چندین کلاس از یک کلاس پایه وراثت می‌گیرند.
بنابراین اگر این مثال کالی را حذف کنیم، خوب؟
پس بیایید این را دورتر بگذاریم.
و حالا ما فقط یک کلاس دیگر به نام گربه داریم که همچنین از حیوان وراثت می‌گیرد، که به این معنی است که حالا گربه نیز قادر به خوردن خواهد بود.
خوب.
حالا یک گربه این متد را خواهد داشت که میو میو کند.
من مطمئن نیستم که چگونه به‌درستی آن را به انگلیسی بنویسم، اما بیایید در واقع، این را به آلمانی انجام دهیم.
میو.
این‌گونه است که آلمانی‌ها آن را می‌نویسند.
پس گربه در حال میو میو کردن است.
فکر می‌کنم میو W درست است، بیایید این‌گونه بنویسیم.
میو میو کردن و زبان انگلیسی واقعاً در مورد تلفظ همه‌جا است.
پس ما اینجا هستیم.
حیوان گربه ما در حال وراثت است، بنابراین اینجا به آن وراثت سلسله‌مراتبی می‌گویند.
بنابراین این سومین نوع وراثت است که در آن یک کلاس پایه حیوان دارید و چندین کلاس مشتق شده دارید.
بنابراین سگ از حیوان مشتق می‌شود، گربه از حیوان مشتق می‌شود.
و ممکن است خیلی بیشتر باشد.
حالا شما می‌توانید به‌وضوح وراثت چندسطحی را با وراثت سلسله‌مراتبی ترکیب کنید.
خوب.
بنابراین ما اکنون یک گربه داریم که میو میو می‌کند.
اما ما همچنین می‌توانیم یک سگی داشته باشیم که پارس می‌کند.
اما در عین حال یک کالی داریم که پارس می‌کند و کارهای دیگری انجام می‌دهد و انواع مختلف گربه‌ها را داریم که ویژگی‌ها و اعضای مختلفی دارند، به‌اصطلاح، وقتی به مثال‌های کدنویسی ما برمی‌گردیم.
خوب.
بنابراین شما لایه‌ها یا انواع مختلف وراثت را دیده‌اید.
حالا همان‌طور که گفتم.
یک نوع چهارم وجود دارد و آن در C# ممکن نیست.
زبان‌های برنامه‌نویسی دیگری وجود دارند که در آن ممکن است و به آن وراثت چندگانه می‌گویند،
جایی که شما ویژگی یک کلاس را دارید که یک کلاس می‌تواند از چندین کلاس دیگر وراثت بگیرد.
خوب.
متأسفانه، همان‌طور که گفتم، این به‌طور مستقیم از طریق وراثت در C# ممکن نیست.
و اینجاست که رابط‌ها وارد می‌شوند و رابط‌ها موضوعی برای روز دیگری هستند.
بنابراین آن‌ها به‌طور قابل توجهی موضوعی پیچیده‌تر هستند، حداقل به نظر من.
و ما بعداً به آن خواهیم پرداخت.
اما این فقط برای شماست که بدانید.
چهار نوع وجود دارد.
سه تای آن‌ها به‌راحتی در C# قابل دسترسی یا قابل استفاده هستند بدون هیچ راه‌حلی.
و نوع چهارمی که یک کلاس از چندین کلاس وراثت می‌گیرد، فقط از طریق رابط‌ها ممکن است.
خوب، پس این پایان این ویدیو است.
در ویدیو بعدی می‌بینمتان. ```