一、面向对象与OOD

      让我们先联系一下生活中的对象:人、动物、植物、汽车、飞机、建筑物、计算机等等。人们通过对象来思考问题。甚至我们把平时谈朋友可以称为找对象。

      基本上对象可以分为两类:活动的对象和非活动的对象。活动的对象是运动的,通过行为去完成某项任务。而非活动对象是不能有主动行为的。但是所有这些对象都有一些共同点:尺寸、颜色、长度、重量等属性(attribute),并具有一些行为(behavior),如汽车可以开动、转弯、刹车等;人会喜、怒、哀、乐、睡觉、说话等;开关可以打开、关闭,等等。

     人们通过研究对象的属性、观察对象的行为而了解对象。不同对象可能有相似的属性和行为、如可以比较小孩和成人、比较成人和猩猩等。

     如今,程序设计为了能和现实生活中的对象紧密结合,也模拟类似其特征的方式去用计算机语言描述一个对象,于是面向设计(OOD)诞生了。它利用类的关系、表示某个类的对象具有相同的属性,比如人类中的老人、中年人、青年人和小孩具有很多共同点。OOD利用继承关系从现有类派生新类,并在新类中增加独特的特征。例如,飞机类对象中运输机有一些战斗机的属性,但战斗机可以发射子弹、导弹。

     面向对象设计可以更自然、更直观地浏览软件设计过程,即根据它们的属性、行为和相互关系建模对象。OOD还建模对象之间的通信,就像人与人之间可以互相说话传达想法一样。对象也可以通过消息互相通信。

     OOD将属性和操作(行为)封装成对象、对象的属性与操作是密切联系的。对象具有信息隐藏属性,即对象间虽然通过良定义的接口能够互相通信,但该对象通常不知道其他对象的实现方法,因为实现细节隐藏在对象内部。比如,我们可以很好地驾驶汽车,但不需要知道发动机、传送系统、刹车系统和排气系统内部是如何工作的,你只需要知道如何使用加速板、刹车踏板和方向盘即可。信息隐藏技术在软件工程中非常的重要。

      C#是面向对象的语言。用这类语言编程成为面向对象编程(OOP),程序员可以方便地用OOD实现可工作的系统。相反,C语言是过程式的语言,编程是面向行为的。在C语言中,编程单位是函数;在C#中,编程单位是类,通过类可以最终实例化(在OOP中称为“生成”)对象。C#的类包含方法(相当于C语言的函数),方法实现操作,而数据实现属性。

转载于:https://www.cnblogs.com/likedotnet/archive/2009/05/20/1473532.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值