이 글에서는 주로 C# 클래스의 상속에 관련된 지식을 소개합니다. 참조값이 매우 좋습니다.
상속
클래스는 다른 클래스로부터 상속받을 수 있습니다. C#에서는 클래스 간에 단일 상속만 있습니다. 즉, 클래스에는 직접 기본 클래스가 하나만 있을 수 있습니다. 클래스 간에 상속이 구현되면 하위 클래스는 정적 생성자 및 클래스의 인스턴스 생성자 메서드와 소멸자 메서드. 그러나 기본 클래스의 모든 멤버를 하위 클래스의 멤버로 사용할 수 있더라도 기본 클래스의 멤버마다 액세스 권한이 다르면 파생 클래스가 액세스할 수 있는 멤버도 달라집니다. 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!