- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]7-类与对 象
国防科技大学计算机学院 第7章 类 与 对 象 章节内容 7.1 面向对象编程的基本知识 7.2 类与对象 7.3 类的成员 7.4 部分类 7.5 类与命名空间 7.6 小结 7.1.1 面向对象编程的历史 1967年5月20日,挪威奥斯陆计算机中心的Ole-Johan Dahl和Kristen Nygaad为了解决模拟问题,设计了第一个面向对象的程序设计语言Simula,此时就有了类和实例化的概念。 70年代,PARC研究所推出了Smalltalk语言,引入了动态对象和继承性思想。Smalltalk语言被认为是第一个真正的面向对象程序语言。 到80年代中后期,面向对象的程序设计日益成熟,并被整个计算机界接受和追逐,面向对象的开发问题便出现了。 90年代,Microsoft Visual系列面向对象的程序设计软件逐渐流行,面向对象的编程已经成为无可取代的潮流,并在无数人的努力下,逐渐走向成熟。 7.1.2 面向对象编程的概念 面向对象编程的对象,即系统中用于描述客观事物的一个实体,是构成系统的一个基本单位。 面向对象编程中的类,是具有相同数据成员和函数成员的一组对象的集合,它为属于该类的全部对象提供了抽象的描述。 面向对象编程的基本内容就是把数据和函数“封装”到编程所必需的“对象”中,程序由一个个能够起到子程序作用的对象(或单元)组合而成 7.1.3 面向对象编程的基本特点 1.封装。面向对象技术中的封装,简单来说就是将代码及其处理的数据绑定在一起,形成一个独立单位,对外实现完整功能,并尽可能隐藏对象的内部细节 。 2.继承。继承(Inheritance)也称作派生,指的是特殊类的对象自动拥有一般类的全部数据成员与函数成员(构造函数和析构函数除外)。 3.多态。多态性(Polymorphism)是指一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。 7.2 类与对象 7.2.1 类的定义 类的修饰符 7.2.1 类的定义 7.2.2 对象 语法: Student s1 = new Student(); 7.3 类的成员 类的成员主要有数据成员和函数成员,也可以嵌套其他类型(如其他类、结构、枚举等) 。 7.3.1 成员访问属性 7.3.1 成员访问属性 using System; class Vehicle //定义汽车类 { public int wheels; //公有成员:轮子个数 protected float weight; //保护成员:重量 public void F() { wheels=4; //正确,允许访问自身成员 weight=10; //正确,允许访问自身成员 } } 7.3.1 成员访问属性 class train //定义火车类 { public int num; //公有成员:车厢数目 private int passengers; //私有成员:乘客数 private float weight; //私有成员:重量 public void F() { num=5; //正确,允许访问自身成员 weight=100; //正确,允许访问自身成员 Vehicle v1=new Vehicle(); V1.wheels=4; //正确,允许访问v1的公有成员 //v1.weight=6; //错误,不允许访问v1的保护成员 } } 类的数据成员包含字段、常量和事件: 1.字段。字段用于表示与对象或类相关联的变量,包括静态字段、实例字段和只读字段。 见下例。 2.常量。常量与类的关联方式和变量与类的关联方式相同。使用const关键字声明常量,如果它们声明为public,就可以在类的外部访问。见下例。 3.事件。事件是类的成员,在类或对象发生某些行为(例如用户的交互操作或者改变了类的某些字段或属性)时,它可以让对象通知调用程序。客户端可以包含所谓“事件处理程序”的代码来响应该事件。有关事件的详细介绍可参见第9章。 7.3.2 数据成员—字段 class Goods { public double height; //实例字段 public readonly double width = 30; //只读字段 public static int count = 0; //静态
您可能关注的文档
- [工学]500kV变电运行保护培训.ppt
- [工学]5双极型晶体管及相关器件.ppt
- [工学]5程序设计基础.ppt
- [工学]5流体PVT.ppt
- [工学]5第五章 数字滤波器的基本概念及一些特殊滤波器.ppt
- [工学]5第五章 方差分析-2.ppt
- [工学]5注射模基本结构与注射机.ppt
- [工学]5运算符及表达式.ppt
- [工学]6 IO接口.ppt
- [工学]5课-组网工具与网络传输介质.ppt
- 2025年广东省梅州市单招职业倾向性测试题库汇编.docx
- 2025年广东省梅州市单招职业倾向性测试题库汇编.docx
- 2025年广东省梅州市单招职业倾向性测试题库附答案.docx
- 2025年新媒体对传统媒体的冲击廖凤苹 .pdf
- 2025年广东省梅州市单招职业倾向性测试题库及答案1套.docx
- 2025年广东省梅州市单招职业适应性测试题库及答案1套.docx
- 2025年广东省梅州市单招职业倾向性测试题库完美版.docx
- 2025年广东省梅州市单招职业倾向性测试题库审定版.docx
- 新质生产力视域下出版物新型生产要素构成分析.pdf
- 江苏开放大学物流园区管理060186课程形成性考核大作业.docx
文档评论(0)