C#中的类继承详解
前言
在日常的程序编码工作中,我们的最终目标是完成公司交给自己的开发任务,核心目标是写出好代码。
那么什么是好代码?
高内聚,低耦合
想必从事编码工作的我们,基本都听说过这句话。那么什么样的代码是高内聚,又如何低耦合呢。
今天咱们就来了解下在C#这个高级语言中,是通过那些形式来表现的。
在目前的高级语言中,这三个特点是共通的,也是我们日常编码中要经常使用的。就是封装、继承、多态。
我们先来看看继承
类的继承
通过继承我们可以得到一个新的类,新类可以自己定义一系列方法和变量,同时拥有基类的属性和行为。
这里的关系是基类和派生类。
需要注意的是派生类不能删除基类的任何成员。
class Ahui:InfoBase { public string GetInfo() { return this.Name+""+this.Age; } } class InfoBase { public int Age { get; set; } public int Name { get; set; } public string Love() { return "女"; } }
上面的示例,InfoBase是属于基类,Ahui属于派生类,可以看到通过冒号来实现继承。
继承的成员可以被访问,就像它们是派生类自己声明的一样。
目前所有类都是派生自object类,object类是唯一的非派生类,它是继承层次结构的基础。目前没有基类规格说明的类隐式地直接派生自类object。
注意事项
1、一个类声明的基类规格说明中只能有一个单独的类,叫做单继承。
2、虽然类只能直接继承一个基类,但是继承的层次无限制。
目前派生类不能删除基类的成员和函数,但是可以通过派生类声明相同的成员来屏蔽基类成员和函数。这里需要注意名称必须相同。
class Program { static void Main(string[] args) { Ahui hui = new Ahui(); Console.WriteLine(hui.Name); Console.ReadKey(); } } class Ahui:InfoBase { public string Name = "阿姨"; public string GetInfo() { return this.Name+""+this.Age; } } class InfoBase { public int Age=27; public string Name = "ahui"; public string Love() { return "女"; } }
寄语
人生短暂,我不想去追求自己看不见的,我只想抓住我能看得见的。