この記事では主にC#クラスの継承関連の知識を紹介します。非常に優れた参照値があります。以下のエディターで見てみましょう
継承
クラスは別のクラスから継承できます。 C# では、クラス間の継承は 1 つだけです。つまり、クラスは直接の基本クラスを 1 つだけ持つことができます。クラス間で継承が実装されている場合、サブクラスは、クラスの staticコンストラクター、インスタンス コンストラクター、および デストラクター
を除く、直接の基本クラスのすべてのメンバーを独自のメンバーとして扱うことができます。ただし、基本クラスのすべてのメンバーをサブクラスのメンバーとして使用できますが、基本クラスのメンバーのアクセス権限が異なる場合、派生クラスがアクセスできるメンバーも異なります。 C# の継承は推移的です。クラス C がクラス B から派生し、クラス B がクラス A から派生した場合、クラス C はクラス B のすべてのメンバーを継承し、クラス A のすべてのメンバー (各基本クラスの静的コンストラクター、インスタンス構築メソッドとデストラクタ メソッドを除く)。サブクラス (派生クラス) は、継承に基づいて独自のメンバーを追加できますが、親クラス (基本クラス) の継承されたメンバーを削除することはできません。デストラクター メソッドの機能は、クラスのインスタンスを破棄することです。その説明は次の記事でまとめます。 以下のコード例を見てください:using System; namespace LycheeTest { public class TV { private int channel = 1; //电视机的频道 private int volume = 20; //电视机的音量 public static string model = "39 英寸液晶"; //型号 /// <summary> /// 具体设置电视机的频道和音量,因为只提供给子类使用 /// 所以用 protected 访问权限关键字修饰 /// </summary> /// <param name="ch">具体设置的频道数</param>/// <param name="vol">具体设置的音量值</param> protected void Set(int ch, int vol) { channel = ch; volume = vol; Console.WriteLine("设置完毕"); } /// <summary> /// 增加频道 /// </summary> public void ChPlus() { channel++; } /// <summary> /// 增加音量 /// </summary> public void VolPlus() { volume++; } /// <summary> /// 将信息显示在电视机屏幕上 /// </summary> public void Show() { Console.WriteLine("电视机型号是:{0}", model); Console.WriteLine("频道:{0}", channel); Console.WriteLine("音量:{0}", volume); } } public class NewTV: TV { public void PlayUDisk() { this.Set(0, 30); this.Show(); Console.WriteLine("现在开始播放 U 盘的视频文件......"); } } class Program { static void Main(string[] args) { NewTV myNewTV = new NewTV(); myNewTV.ChPlus(); myNewTV.VolPlus(); myNewTV.Show(); myNewTV.PlayUDisk(); Console.ReadKey(); } } }
电视机型号是:39 英寸液晶 频道:2 音量:21 设置完毕 电视机型号是:39 英寸液晶 频道:0 音量:30 现在开始播放 U 盘的视频文件......
以上がC# クラスの継承を簡単に紹介するサンプル コードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。