再认面向对象技术


第一次上计算机课,米老师给我们说了面向对象,记得当时米老师用一个人敲门讲了什么叫做对象,什么叫做方法,什么叫做事件,什么叫做面向对象,现在看到UML的视频,里边又讲到面向对象技术,那么我想我是需要好好的总结一下了。

面向对象技术Object-Oriented Technology),是软件开发过程中,面向客观世界或问题域中的事物,采用人类在认识客观世界的过程中普遍运用的思维方法,直观、自然地描述客观世界中的有关事物。


在理解面向对象时,首先要了解什么是、对象以及二者之间的关系。

     类的概念:类是具有相同属性和服务的一组对象的集合。它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性说明和服务说明两个主要部分。

  对象的概念:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。一个对象由一组属性和对这组属性进行操作的一组服务组成。从更抽象的角度来说,对象是问题域或实现域中某些事物的一个抽象,它反映该事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。客观世界是由对象和对象之间的联系组成的。

  类与对象的关系就如模具和铸件的关系,类的实例化结果就是对象,而对一类对象的抽象就是类。类描述了一组有相同特性(属性)和相同行为(方法)的对象。

接下来就向大家介绍一下面向对象技术的特性,它包括封装性,继承性,多态性

封装Encapsulation

就是把对象的属性和行为结合成一个独立的单位,并尽可能隐蔽对象的内部细节。

封装有两个含义:

      一是把对象的全部属性和行为结合在一起,形成一个不可分割的独立单位。对象的属性值(除了公有的属性值)只能由这个对象的行为来读取和修改;

      二是尽可能隐蔽对象的内部细节,对外形成一道屏障,与外部的联系只能通过外部接口实现。

继承性(Inheritance)

继承性是指特殊类的对象拥有其一般类的属性和行为。继承意味着“自动地拥有”,即特殊类中不必重新定义已在一般类中定义过的属性和行为,而它却自动地、隐含地拥有其一般类的属性与行为。继承是对客观世界的直接反映,通过类的继承,能够实现对问题的深入抽象描述,反映出人类认识问题的发展过程。

在软件开发过程中,继承性实现了软件模块的可重用性、独立性,缩短了开发周期,提高了软件开发的效率,同时使软件易于维护和修改。这是因为要修改或增加某一属性或行为,只需在相应的类中进行改动,而它派生的所有类都自动地、隐含地作了相应的改动。

多态性(Polymorphism)

指类中同一函数名对应多个具有相似功能的不同函数,可以使用相同的调用方式来调用这些具有不同功能的同名函数。面向对象设计借鉴了客观世界的多态性,体现在不同的对象收到相同的消息时产生多种不同的行为方式。例如,在一般类“几何图形”中定义了一个行为“绘图”,但并不确定执行时到底画一个什么图形。

       面向过程

       说到面向对象技术,那就不得不说一下它的前辈,面向过程技术。

面向对象程序设计(Object OrientedProgramming,OOP)方法出现之前,程序员用面向过程的方法开发程序。面向过程的方法把密切相关、相互依赖的数据和对数据的操作相互分离这种实质上的依赖与形式上的分离使得大型程序不但难以编写,而且难以调试和修改。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值