- 31
- 0
- 约1.97万字
- 约 111页
- 2021-11-16 发布于上海
- 举报
声明抽象类与抽象方法均使用关键字abstract,其基本格式为: public abstract 类名 { public abstract 返回类型 方法名称(参数列表); … } 抽象方法声明时没有方法体,只有方法签名,后跟一个分号。 重写抽象方法的格式为: public override返回类型 方法名称(参数列表){ 方法体 } 其中方法名称和参数列表必须与抽象类中的抽象方法完全一致。 4.8抽象类 例4-14:抽象类与抽象方法的定义与重写 namespace ch4_14 { ///定义抽象类 abstract public class Animal { //定义字段 protected int _id; //定义属性 ,在抽象方法声明中不能使用static或virtual修饰符 4.8抽象类 public abstract int Id { get; set; } //定义方法 public abstract void Eat(); } ///实现抽象类 public class Dog : Animal { 4.8抽象类 public override int Id { get { return _id; } set { _id = value; } } public override void Eat() { Console.WriteLine(Dog Eats.); } } class Program { static void Main(string[] args) { } } } 4.8抽象类 在面向对象方法中,抽象类主要用来进行类型隐藏。构造出一个固定的一组行为的抽象描述,但是这组行为却能够有任意个可能的具体实现方式。这个抽象描述就是抽象类,而这一组任意个可能的具体实现则表现为所有可能的派生类。模块可以操作一个抽象体。由于模块依赖于一个固定的抽象体,因此它可以是不允许修改的;同时,通过从这个抽象体派生,也可扩展此模块的行为功能。为了能够实现面向对象设计的一个最核心的原则OCP(Open-Closed Principle),抽象类是其中的关键所在。 4.8抽象类 4.9接口 在软件开发过程中,有时我们编写的程序需要提供给外部商家进行二次开发或者其它的服务,但我们又不希望他们看见我们程序的内部细节,在此情况下,我们可以把我们的产品做成组件,用接口描述组件对外提供的服务。组件和组件之间、组件和客户之间都通过接口进行交互,所以接口在软件设计过程中还是一个很重要的知识。 接口用来定义一种程序的协定。实现接口的类与接口的定义严格一致。接口可以包含方法、属性、事件和索引器。接口不可以包括字段,接口本身不提供它所定义的成员的实现。接口只指定实现该接口的类或接口必须提供的成员。 所以接口不能被实例。 定义接口使用的关键字为interface,其一般形式为: [修饰符] interface 接口名称 [:基接口列表] { 接口体成员列表 } 其中,允许使用的修饰符有 :public、protected、internal、 private。修饰符定义了对接口的访问权限。 C#中类的继承只可以是一个,即子类只能派生于一个父类,而有时你必须继承多个类的特性,为了实现多重继承必须使用接口技术,下面是对接口的多重继承进行介绍。 4.9接口 例4-15:对接口的多重继承。 namespace ch4_15 { //定义一个描述点的接口 interface IPoint { int x { get; set; } 4.9接口 int y { get; set; } } interface IPoint2 { int y
您可能关注的文档
最近下载
- 高分突破语文钢铁是怎样炼成的导学案.ppt VIP
- 探索水中上浮气泡的声学奥秘:特性、影响因素及应用前景.docx
- 赛力斯SF5使用说明书2(共2部分).pdf
- 蓝天JB-QT-503(JB-QG-505)火灾报警控制器(消防联动控制器)新版使用说明书.pdf
- HUALU1X02-2014 钢结构焊接连接节点通用图.docx VIP
- 经脑室外引流装置连接压力传感器行颅内压监测技术.pdf VIP
- 脑梗塞溶栓治疗后的护理ppt课件.pptx VIP
- GA/T 2128-2024城市道路网交通运行态势评估指标体系.pdf
- 高分突破骆驼祥子导学案课件.ppt VIP
- ASTM D7348-13 美国材料与试验协会标准.pdf VIP
原创力文档

文档评论(0)