- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]C Ch3
电子科大成都学院精品课程《Visual C# .Net程序设计》 Visual C# .Net程序设计 电子科大成都学院计算机系 课件制作:罗福强 E-Mail:LFQ501@SOHU.COm 第三章面向对象的程序设计入门 3.1 面向对象的基本概念 3.2 类的定义 3.3 类的方法 3.4 构造函数与析构函数 3.5 静态类与静态成员 3.1面向对象的基本概念 一、对象 二、事件与方法 三、类与实例 四、封装、继承与多态 一、对象 对象(Object),是问题域中某些事物的一个抽象,反映事物在系统中需要保存的必要信息和发挥的作用,是包含一些特殊属性(数据)和服务(行为方法)的封装实体。 具体来说,对象应有唯一的名称、有一系列状态(表示为数据)、有表示对象行为的一系列行为(方法),如右图所示。 对象=数据+动作(方法/操作) 二、事件与方法 1. 事件(Event) 又称消息(Message)表示向对象发出的服务请求。 2. 方法(Method) 表示对象能完成的服务或执行的操作功能。 例如:人事经理郭忠要求同部门的员工宁静于2008年9月开展C#程序设计培训。对于对象“郭忠”来说,他向对象“宁静”安排培训任务(在面向对象概念中称为发出了服务请求或发生了系统事件)。对于对象“宁静”来说,他在公司中所承担的任务就是培训(在面向对象概念中称为方法或服务)。宁静的培训活动不会自动发生,必须有人提出培训要求。郭忠一旦安排了培训任务,那么宁静的培训活动就会进行。 三、类与实例 类(Class)是具有相同属性和服务的一组对象的集合 类为属于同类的所有对象提供统一的抽象描述。其中,相同的属性是指定义形式相同,不是指属性值相同。 对象是类的一个实例。 类与实例的关系是抽象与具体的关系,类是多个实例的综合抽象,实例是类的个体实物。 例如,宁静是培训工作者,培训工作者是一个类,宁静作为一个具体的对象,是培训工作者类的一个实例。 四、封装、继承与多态 1. 封装 封装就是指把对象的全部属性和全部服务结合在一起形成一个不可分割的独立单位。 封装的目的在于将对象的使用者与设计者分开,使用者不必了解对象行为的具体实现,只需要用设计者提供的消息接口来访问该对象。 2.继承 继承机制的优势在于降低了软件开发的复杂性和费用,使软件系统易扩充 3. 多态 多态性是指在基类中定义的属性或服务被派生类继承后,可以具有不同的数据类型或表现出不同的行为。为了实现多态性,需要在派生类中更改从基类中自动继承来的数据类型或方法。这种为了替换基类的部分内容而在派生类中重新进行定义的操作,在面向对象概念中称之为覆盖。 3.2类的定义 一、类与类的实例 二、类的数据成员 三、类的可访问性 四、类的嵌套 一、类与类的实例 1. 类的声明,一般形式如下: [访问修饰符] class 类名 [:基类] { 类的成员; } 其中,访问修饰符用来限制类的作用范围或访问级别,可省略。基类表明所定义的类是一个派生类,可省略。类名推荐使用Pascal命名规范。Pascal命名规范要求名称的每个单词的首字母要大写。类的成员放在花括号中,构成类的主体,用来定义类的数据和行为。类的成员包括类的常量、字段、属性、索引器、方法、事件、构造函数和析构函数等。 2. 类的实例 (1) 对象的声明与创建 例如,Person p = new Person(); //声明并创建对象 (2) 类成员的访问 内部访问:this.类成员 外部访问:通过对象名来访问类的成员,格式如下: 对象名.类成员 如右图所示: 实例3-1演示 二、类的数据成员 1. 常量 2. 字段 3. 属性 1. 常量 类的常量成员是一种符号常量,必须指定名称和值 一般形式如下: [访问修饰符] const 数据类型 常量名=常量的值; 例如: 2. 字段 字段表示类的变量,字段的值代表着某个对象的数据状态。不同的对象,数据状态不同,意味着各字段的值不同。 一般格式如下: [访问修饰符] 数据类型 字段名; 其中,访问修饰符,控制常量的访问级别,可省略。 例如: 3. 属性 属性用来读取、修改或计算字段的值。 一般形式如下如右图所示 其中,get语句用来获得属性的值,set语句用来设置属性的值。 三、类的可访问性 四、类的嵌套 在类的内部或结构的内部定义的类型,称为嵌套类型,又称内部类型。 不管包含类型是类还是结构,嵌套类型均默认为private,嵌套类型也可以设置为public、internal、protected或protected internal。 嵌套类型一般来说也需要实例化为对象之后,才能引用其成员。嵌套类型的使用方法与类的普通成员使用基本相同。 实例3-3演示 3.3 类的
文档评论(0)