第17章 C#语言简介.pdfVIP

  • 3
  • 0
  • 约8.77万字
  • 约 59页
  • 2021-03-29 发布于江西
  • 举报
第17 章 C#语言简介 C# (C Sharp )是微软于2000 年提出的一种源于C++、类似于Java 的面向对象编程语言,适合于分布式环境中 的组件开发。C# 是专门为.NET 设计的,也是.NET 编程的首选语言。 17.1 OOP 语言 OOP (Object-Oriented Programming,面向对象编程)是目前主流的编程技术,本节介绍其中最重要的C++、Java 和C#,重点是它们三者之间的关系与对比。 17.1.1 OOP 概述 程序设计语言,在思想上发展很快,在技术上也是不断创新。经历了手工操作(控制面板)、机器语言、汇编 语言、宏汇编语言、高级语言和第4 代语言等多个阶段。OOP 只是在高级程序设计语言中,流行的多种编程技术之 一。 1.基本特征 面向对象编程的三个基本特征是:  封装 (encapsulatio )—— 是对问题的抽象,以达到信息隐藏的目的。通过类和对象,将属性 (数据/变量) 和方法(操作/ 函数)封装在一个黑箱内,将细节隐藏起来。既可以保护数据不被他人恶意或大意地修改, 又能防止其他程序员编写高耦合度的代码,还方便了今后对对象内部的修改和升级。  继承(inheritance )—— 利用问题和事物的相似性,通过类的(多层)继承机制,可以达到减少软件开发 难度和重用已有对象的属性和方法之目的。  多态 (polymorphism )—— 同一操作或响应,可以同时针对多个可选的类型和对象,并且能够自动在它们 中间选择最合适的来进行。多态可以分为:  编译时多态:包括函数和运算符的重载(overload),通过早期的静态绑定(binding )来实现。  运行时多态:通过继承结合晚期动态绑定来实现——用同一基类的指针,可以访问各个不同派生类中 的同名方法和函数。 2.基本概念 面向对象编程的基本概念(类似的概念多、表达不够准确、各处的用法各异):  抽象 (abstractio )—— 一个问题的本质特征。忽略一个对象的细节,致力于一般的合适级别的程序能力。 1 抽象是在事物的周围绘制透明的盒子,是定义事物接口的行为。  信息隐藏(information hiding)—— 限制外部对类属性(数据成员)的访问。  封装(encapsulation)—— 将某种保密和隐匿应用到类中的数据和一些方法(函数或子例程)上。封装确 保一个对象只能通过确定的渠道(即类的公用方法)才可被修改。封装意味着将数据及相关函数打包到一 个单一的单元(类)中。每个对象暴露一个接口(公用方法),规定其他对象可以如何读取或修改它。  类(class )—— 问题的抽象,对象的模版,接口的实现。例如int 是整数的模版、CPoint 是点的模版。  对象(object )—— 问题中的事物,类的实例(变量),拥有数据和功能。若int i; CPoint p; 则i 是int 的 实例变量,p 是CPoint 的实例对象。  实例(instance )—— 一个对象,是某个类的示例。  实例化(intantiate)—— 由类定义创建对象。  继承(inheritance )—— 创建子类的机制,一种“is a ”或“is like”关系,形成类层次结构。是OOP 中对 象重用的核心概念。  子类(subclass )—— 继承自另一个类的派生类(derived class )。  超类(superclass 父类)—— 被另一个类继承的基类(base class )。  虚函数(virtual function )—— 可以在子类中被覆盖(override)的函数。  纯虚函数(pure virtual function )—— 只有声明没有定义的函数,必须在派生类中被覆盖。  抽象类(abstract class )—— 至少包含一个纯虚函数的类,不能被实例化。  具体类(concrete class )—— 可以实例化的类,不包含纯虚函数。  接口(interface )—— 纯抽象的类,类的模版。接口中的所有的方法(成员函数)都只有声明,没有定义 (都是纯

文档评论(0)

1亿VIP精品文档

相关文档