c#面向对象编程基础学习笔记.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 C#面向对象编程基础 面向对象程序设计是相对结构化程序设计而言的。使用面向对象思想编制软件,是当前最流行的程序设计方法。本章介绍面向对象程序设计的一些基本概念和技术。 3.1 继承 在2.1.5节,定义了一个描述个人情况的Person类。如需要描述一个雇员,当然可以从头开始定义Employee类用来描述雇员。但这样不能利用Person类中已定义的函数和数据。比较好的方法是以Person类为基类,派生出Employee类,Employee类继承了Person类的数据成员和函数成员,既Person类的数据成员和函数成员成为Employee类的成员。这个Employee类叫以Person类为基类的派生类,这是C#提出的方法。C#用继承的方法,实现代码的重用。 3.1.1 派生类的声明格式 派生类的声明格式如下: 附加说明 类修饰符 class 派生类名:基类名 {类体} 雇员类Employee定义如下: class Employee:Person { private string department; private decimal salary; public Employee(string Name,int Age, string D,decimal S):base(Name,Age) { department=D; salary=S; } public new void Display() //注意new { base.Display();//访问基类的同名方法 Console.WriteLine(“部门:{0} 薪金:{1}”, department,salary); } } 主函数如下: class Class1 { static void Main(string[] args) { Employee OneEmployee=new Employee( “李四”,30,计算机系,2000); OneEmployee.Display(); } } 3.1.2 隐藏基类方法 在派生类中,可以声明与基类完全相同的新方法,完全相同是指和基类方法的函数类型、函数名、参数类型和个数都相同。如上例中的方法Display()。这样做不算错误,但会导致编译器发出警告。如果增加new修饰符,表示认可,编译器不再发出警告。请注意,声明与基类完全相同新方法,并不是移走基类同名方法,只是在派生类中必须用如下格式访问基类中同名方法:base.Display(); 也就是说派生类的新方法隐藏了基类同名方法。 3.1.3 base 关键字 base关键字用于从派生类中访问基类成员,它有两种基本用法: 在定义派生类的构造函数中,指明要调用的基类构造函数,由于基类可能有多个构造函数,根据base后的参数类型和个数,指明要调用哪一个基类构造函数。 在派生类的方法中调用基类中被派生类隐藏的方法。 3.1.4 C#语言类继承特点 C#语言只允许单继承,即派生类只能有一个基类。 C#语言继承是可以传递的,如果C从B派生,B从A派生,那么C不但继承B的成员,还要继承A中的成员。 派生类可以添加新成员,但不能删除基类中的成员 派生类不继承基类的构造函数和析构函数。能继承基类的属性。 派生类可以隐藏基类的同名成员,如果在派生类中隐藏了基类同名成员,基类该成员在派生类中就不能被直接访问,只能通过base.基类方法名访问。 派生类对象也是其基类的对象,但基类对象却不一定是其派生类的对象。例如,前边定义的雇员类Employee是Person类的派生类,所有雇员都是Person类的成员,但很多Person类的成员并不是雇员,可能是学生、自由职业者、儿童等。因此C#语言规定,基类的引用变量可以引用其派生类对象,但派生类的引用变量不可以引用其基类对象。 3.2 类的成员 由于C#程序中每个变量或函数都必须属于一个类或结构,不能象C或C++那样建立全局变量,因此所有的变量或函数都是类或结构的成员。类的成员可以分为两大类:类本身所声明的以及从基类中继承来的。 3.2.1 类的成员类型 类的成员包括以下类型 局部变量:在for、switch等语句中和类方法中定义的变量 字段:即类中的变量或常量,包括静态字段、实例字段、常量 和只读字段。 方法成员:即类中的方法,包括静态方法和实例方法。 属性:按属性指定的get方法和set方法对字段进行读写。属 性本质上是方法。 事件:代表事件本身,同时是事件处理函数的代表。 索引指示器:允许象数组那样使用索引访问类中的数据成员。 重载操作符:采用

文档评论(0)

kfcel5889 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档