c#继承和多态说课.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
构造函数 构造函数不能继承 在实例化子类对象时,会默认调用父类构造函数 如果父类有多个构造函数,子类会默认调用无参的构造函数 如果需要调用有参的默认函数,需要显示指明 需要使用base关键字 调用 base 构造函数 关键字 new class A { public virtual void T1() { Console.Write(A);} } class B : A { public override void T1() { base.T1(); Console.Write(B);} } class C : B { public override void T1() { base.T1(); Console.Write(C);} } class Program { static void Main(string[] args) { C C1 = new C(); C1.T1(); Console.ReadLine(); } } class A { public virtual void T1() { Console.Write(A);} } class B : A { public override void T1() { base.T1(); Console.Write(B);} } class C : B { public override void T1() { base.T1(); Console.Write(C);} } class Program { static void Main(string[] args) { C C1 = new C(); C1.T1(); Console.ReadLine(); } } 关键字 override和virtual 关键字 new 用关键字abstract修饰的抽象类是一种没有被完整定义的类,因而它不能用来实例化,或者说,不能产生对象,设计abstract类的目的是为了被继承,其意义在于: 1、包含派生类的公有成员,这些成员在抽象类中之定义一次,就可以被反复使用,提高了软件开发的效率和可维护性 2、规范行为,抽象方法等具体行为特征的成员实际上是一种建模过程,规定了输入口和输出口,而将实现的细节留给派生类根据实际情况编程。 同一个抽象类的派生类有许多共性,这使得它们有了交互的基础。 定义抽象类的格式: abstract class 类名: { …… } 抽象类不能产生实例,所以如下形式的语句都是错误的: 抽象类名 对象名 = new 抽象类名(参数列表) new 抽象类名(参数列表) 当从抽象类派生非抽象类时,这些非抽象类必须具体实现所继承的所有抽象成员,从而重写那些抽象成员。在下面的示例中 abstract class A { public abstract void F(); } abstract class B: A { public void G() {} } class C: B { public override void F() { // actual implementation of F } } 抽象类 A 引入抽象方法 F。类 B 引入另一个方法 G,但由于它不提供 F 的实现,B 也必须声明为抽象类。类 C 重写 F,并提供一个具体实现。由于 C 中没有了抽象成员,因此可以(但并非必须)将 C 声明为非抽象类。 抽象类和抽象方法 抽象类和抽象方法 2.7.3 封闭类 封闭类与sealed关键字 想想看,如果所有的类都可以被继承,继承的滥用会带来什么后果?类的层次结构体系将变得十分庞大,类之间的关系杂乱无章,对类的理解和使用都会变得十分 困难。有时候,我们并不希望自己编写的类被继承。另一些时候,有的类已经没有再被继承的必要。 C#提出了一个密封类(sealed class)的概念,帮助开发人员来解决这一问题。密封类不能被继承。通常是些功能不宜改动,甚至是直接实现某些标准的类,有些系统预定

文档评论(0)

舞林宝贝 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档