欢迎来到.net学习网

欢迎联系站长一起更新本网站!QQ:879621940

您当前所在位置:首页 » C#从入门到精通 » 正文

面向对象的基本概念与三个基本特性

创建时间:2013年09月29日 22:15  阅读次数:(4280)
分享到:
第5章面向对象
前面几章介绍了c#语法和编程的基础知识,以及调试应用程序的方法。本章将介绍面向对象编程的概念,因为C#是纯粹的面向对象编程语言,它真正体现了“一切以为对象”的精神。在C#中,即使是最基本的数据类型,如int,double,bool类型,都属于System.Objet类型。此外,使用C#编程,不会存在与游离于对象之外的属于过程的东西。因此,学习C#就必须具有面向对象思想,不明白所谓的“面向对象思想”,就不可能掌握c#的精髓,而对于c#的理解,就只能仅限于语言特色的表面了。

5.1面向对象的基本概念
面向对象方法是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系。一个对象类定义了具有相似性质的一组对象,而继承性是对具有层次关系的类的属性和操作进行其共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制来认识,理解、刻画客观世界和设计、构建相应的软件系统。

面向对象的技术就是把数据和对数据的操作作为为一个相互依赖。不可分割的整体,采用数据抽象和信息隐蔽的技术力图使问题的求解简单化.清晰化。同面向过程的语言相比,它更符合人们的思维习惯,同时有助于控制软件的复杂性,提高软什的生产效率,从而得到广泛的应用。也可以这样认为:“面向对象=对象+类+继承+通信”。如果一个软什系统是使用这样四个概念来设计和实现的,我们认为这个软什系统是面向对象的。

5.1.1一切都是对象
对象是面向对象开发方法的基本成分。每个对象可用它本身的一组属性和相应的一组操作来定义。在面向对象设计中,对象可以用于表示几乎所有的实物和概念,可以表示物理对象,比如“汽车”或者“计算机”’也可以表示在特定领域中才有的概念性对象,比如计算机领域中“文件”或者"快捷键”。对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。对象的属性是与对象相关的特性和变量;对象的操作是对象可以执行的.用来改变其自身或者外部产生影响的方法,行为和函数。

5.1.2类的面向对象特性
类是一组具有相同数据结构和相同操作的对象的集合。类是对一系统具有相同性质的对象的抽象,是对对象共同特征的描述。比如每一辆汽车是一个对象的话,所有的汽车可以看做个模板,我们就定义汽车这个类。因为类描述了具有共同特性(数据元素)和行为(功能)的对象集合,所以一个类实际上就是一个数据类型,例如,所有的整型数具有相同的特性和行为集合。类的定义决定了类具有以卜3个特性:封装,继承,多态

封装性
封装是一种信息稳蔽技术,它体现于类的说明,是对象的重要特性。封装使数据和加工该数据的方法(函数)封装为-个整体,以实现独立性很强的模块,使得用户只能见到对象的外特性(对象能接收哪些消息,具有那些处理能力),而对象的内特性(保存内部状态的私有数据和实现加工能力的算法)对用户是隐蔽的。封装的目的在于把对象的设计者和对象的使用者分开,使用者不必知晓行为实现的细节.只须用设计者提供的消息来访问该对象。

继承性
继承是使用已存在的定义作为基础建立新定义的技术。新类的定义可以是已存在类所声明的数据和新类所增加的声明的组合。新类复用已存在类的定义,而不要求修改该类。已存在的类可以作为基类来引用,而新类可以作为派生类来引用。这种复用技术大大降低了软件的开发周期。例如,汽车作为一个类已经存在,作为具有自身特征的卡车就可以从汽车类中继承。它同汽车一样,具有颜色,重量这些特征,可以驾驶和鸣笛等。它还具有一般汽车不一定具备的特征,如可以载货等。
   
多态性
面向对象程序设计中的另一个重要概念是c#多态性。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法。可以把一组对象放到一个数组中,然后调用它们的方法。在这种场合下,多态性作用就体现出来了,这些对象不必是相同类型的对象。当然,如果它们都继承自某个类,你可以把这些派生类,都放到一个数组中。如果这些对象都有同名方法,就可以调用每个对象的同名方法。0?齎篘A
来源:.net学习网
说明:所有来源为 .net学习网的文章均为原创,如有转载,请在转载处标注本页地址,谢谢!
【编辑:Wyf】

打赏

取消

感谢您的支持,我会做的更好!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

最新评论

共有评论1条
  • #1楼  评论人:4  评论时间:2015-5-30 14:22:30
  • 2
发表评论:
留言人:
内  容:
请输入问题 2+16=? 的结果(结果是:18)
结  果: