您的位置:首页 > 编程语言

面向对象编程的几个有关概念

2012-04-19 13:55 155 查看
1、对象(object)

客观世界中任何一个事物都可以看成一个对象;对象应当具备两个要素:属性(静态特征)和行为(动态特征)。

使用面向对象的程序设计方法设计一个复杂的软件系统时,首要问题是确定该系统由哪些对象组成,并设计这些对象。在C++中,每个对象都由数据和函数(即操作代码)组成。数据体现了“属性”;函数是用来对数据进行操作的,以便实现某些功能。调用对象中的函数就是向该对象传送一个消息(message),要求该对象实现某一行为(功能)。

2、封装(encapsulation)与信息屏蔽

封装包括两个方面的含义:一是将有关的数据和操作代码封装在一个对象中,形成一个基本单位,各个对象之间相互独立,互不干扰;二是将对象中的某些部分对外隐蔽,即隐蔽内部细节,只留下少量接口,以便与外界联系,接收外界的消息。这种对外界隐蔽的做法成为信息隐蔽(information hiding)。信息隐蔽有利于数据安全,防止无关的人了解和修改数据。

C++的对象中的函数名就是对象的对外接口,外界可以通过函数名来调用这些函数来实现某些行为(功能)。

3、抽象(abstraction)

类是对象的抽象,对象是类的特例,或者说是类的具体表现形式。

4、继承(inheritance)与重用

采用继承的方法,可以很方便的利用一个已经有的类建立一个新的类,这样就可以重用已有软件中的一部分甚至大部分,大大节省了编程工作量,也就是软件重用(software reusability)的思想。不仅可以利用自己过去所建立的类,而且可以利用别人使用的类或者存放在类库中的类,对这些类作适当的加工即可,大大缩减了软件开发周期。

5、多态性(polymorphism)

在C++程序设计中,多态性是指具有不同功能的函数可以用同一个函数名,这样就可以用一个函数名调用不同内容的函数。在面向对象方法中一般这样表述多态性的:向不同的对象发送同一个消息,不同的对象在接收时会产生不同的行为(方法)。也就是说,每一个对象可以用自己的方式去响应共同的消息。所谓消息,就是调用函数,不同的行为就是指不同的实现,即执行不同的函数。

从实现的角度来看,多态性分为两类:静态多态性和动态多态性。函数重载和运算符重载实现的多态性属于静态多态性,在程序编译时系统就能决定调用的是哪个函数,因此静态多态性又称编译时的多态性。动态多态性是在程序运行过程中才动态的确定操作所针对的对象,它又称运行时的多态性。动态多态性是通过虚函数(virtual function)实现的。

复制搜索

复制搜索

复制搜索

复制搜索

复制搜索

复制搜索

复制搜索

复制搜索
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: