C# sendiri tidak menyokong pelbagai warisan (warisan kelas adalah dari pelbagai kelas induk). Walau bagaimanapun, simulasi model ini dalam beberapa kes masih sangat berguna.
Gunakan kaedah antara muka dan pengembangan untuk menggabungkan
Daripada mencapai pelbagai warisan, lebih baik untuk mempertimbangkan menggunakan kombinasi antara muka. Tentukan antara muka untuk fungsi yang diperlukan dan buat kelas yang mencapai semua antara muka yang diperlukan. Untuk memudahkan panggilan kaedah, ciri -ciri kaedah pengembangan C# 3.0 boleh digunakan.
Kaedah ini membolehkan anda menggabungkan kelas, setiap kelas menyediakan fungsi khusus, dan mengaksesnya melalui antara muka yang mudah dan intuitif. Contohnya:Penyelesaian Berdasarkan kod -Generated
<code class="language-csharp">public interface ISteerable { SteeringWheel wheel { get; set; } } public interface IBrakable { BrakePedal brake { get; set; } } public class Vehicle : ISteerable, IBrakable { ... } public static class SteeringExtensions { ... } public static class BrakeExtensions { ... } ... Vehicle myCar = new Vehicle(); myCar.SteerLeft(); myCar.Stop();</code>
Dengan menggunakan gabungan dan teknologi penjanaan kod, anda dapat mensimulasikan warisan berganda dengan berkesan dalam C# tanpa memperkenalkan kerumitan yang berkaitan dengan warisan berbilang sebenar.
Atas ialah kandungan terperinci Bagaimanakah banyak warisan boleh disimulasikan dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!