全部博文(82)
分类: C/C++
2009-12-06 22:40:20
面向对象程序设计方法的核心:
l 抽象:从事物中舍弃个别的、非本质的属性,抽取出共同的、本质的属性的过程,是形成概念的手段。抽象包括过程抽象和数据抽象。
l 封装:将对象的属性和行为分别用数据结构和方法描述,将它们绑定在一起形成一个可供访问的基本逻辑单元。
l 对象:用来描述现实世界中实体的部件,是面向对象软件系统在运行时刻的基本单位。为了区分属于同一个类的不同对象,每个对象都有一个惟一的标识。
l 类:是一组具有相同属性特性的对象的抽象描述,又一核心概念。类是对象抽象的结果。对象是类的具体化,是类的实例。类之间存在的关系:关联、聚合、泛化。
l 消息:是一个对象要求另一个对象实施某项操作的请求。具体的操作过程由接受者自行决定。消息传递时对象之间相互联系的惟一途径。消息是驱动面向对象程序运行的源泉。
l 继承:是类之间的一种常见关系。为共享数据和操作提供了一种良好的机制。一个类的定义可以基于另外一个已经存在的类。可大大提高程序的可重用性和可扩充性。
面向对象程序设计的特点:
l 程序设计:程序是由一个个的对象组成的。对象之间通过消息而相互作用。 程序设计的主要技巧在设计哪些类以及类之间的关系。
l 程序内容:由对象和消息传递组成。
面向对象程序设计的优点:
l 实现对现实世界客体的自然描述
l 可控制程序的复杂性
l 可增强程序的模块性
l 可提高程序的重用性
l 可改善程序可维护性
C++语言的特点:
Ø 支持数据封装
就是支持数据抽象。类是支持数据封装的工具,对象则是数据封装的实现。
Ø 包含私有、公有和保护成员
私有(Private)成员,只有在类中说明的函数才能访问该类的私有成员。
公有(Public)成员,类外面也可访问,成为该类的接口。
保护(Protected)成员,只有该类的派生类可以访问,其余的在这个类外不能访问。
Ø 通过发送消息来处理对象
通过向对象发送消息来处理对象的,每个对象根据所接收的消息的性质来决定需要采取的行动,以响应这个消息。响应这些消息是一系列的方法。
Ø 允许友元破坏封装性
类中的私有成员一般是不允许该类外的任何函数访问的,但是友元可以打破。分为:友元函数,友元类。
Ø 允许函数名和运算符重载
支持多态性,允许一个相同的标示符或运算符代表多个不同实现的函数。
Ø 支持继承性
允许单继承和多继承。
Ø 支持动态绑定
可以定义虚函数,通过定义虚函数来支持动态绑定。