第五章面向对程序设计进阶.ppt

  1. 1、本文档共88页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章面向对程序设计进阶

第五章 面向对象程序设计进阶 5.1、类的继承 5.2、抽象类和密封类 5.3、多态 5.4、接口 5.5、结构 5.6、委托和事件 5.7、异常处理 5.1 类的继承 5.1.1、基类与派生类 5.1.2、成员的继承、添加和隐藏 5.1.3、base关键字 继承是面向对象程序设计的主要特征之一,是重要的代码重用技术,可以节省程序设计的时间,更重要的是继承反映了许多现实世界问题域的内在特点。 C#语言提供了两种实现继承的方式:类的继承和接口继承。通常把作为基础、被继承的类称为基类,继承别的类的子类称为派生类。 C#中,派生类只能从一个类中继承,不支持多继承的机制。如果必须使用多重继承,可以使用接口继承来实现。 5.1.1 、基类与派生类 C#中,派生类只能从一个类中继承。每个类的声明都在隐式的继承System.Object类;通常我们所讲的继承是指显式的继承。 在语法上,继承是在类的声明同时完成的。在类名标识符后面加上冒号“:”,冒号后面是基类,因为只有单继承,所以基类只有一个。 C#中,派生类从它的直接基类中继承成员:方法、字段、属性、事件、索引器。除了构造函数和析构函数,派生类隐式地继承了直接基类的所有成员。 例5-1 using System; namespace School { public class Student//定义类Student { public string SName; protected int SID; public Student() { } public Student(string str, int id) { SName = str; SID = id; } public void PrintBase() { Console.WriteLine(在基类Student中); } public void FindInfo(int id) { if (id == SID) Console.WriteLine({0}is a student.,SName); } } //定义CollegeStudent,继承Student类 public class CollegeStudent : Student { string department; new string SName; public CollegeStudent(string dp, string str, int id) { department = dp; SName = str; SID = id; } public void PrintDerived() { Console.WriteLine(在派生类CollegeStudent中); } public new void FindInfo(int id) { if (id == SID) Console.WriteLine({0}is a student in the {1} Department., SName,department); } } public class Test { public static void Main() { Student A = new Student(李晓明, 91987); CollegeStudent B = new CollegeStudent(软件工程, 王洪刚, 91988); A.FindInfo(91987); A.PrintBase(); B.FindInfo(91988); B.PrintBase(); B.PrintDerived();

文档评论(0)

173****7830 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档