面向对象有关概念

基本概念

1. 抽象

抽象的过程就是将事物的共性归纳、集中的过程。抽象的作用是表示同一类事物的本质。(c++的数据类型就是对一批具体数的抽象)

以不同的抽象标准就会抽象成不同的类。类是对象的抽象,对象是类的特例

2. 类和对象

万物皆对象,包含静态特征(属性)动态特征(行为)。对象之间通过消息连通。而类是所有面向对象语言的共同特征,是C++的灵魂。基于对象就是基于类。

一组数据与一组操作相对应,把相关的数据和操作放在一起,形成一个整体,与外界分割。这就是面向对象程序设计中的对象

在C++中每个对象都由数据(属性)函数(方法)两部分组成。调用对象中的函数就是给该对象传送一个消息,要求它执行指定函数,实现某一功能。(如一个摄像机,它有牌子、重量和型号等属性,有录像、快进和暂停等功能。)

3. 封装与信息隐蔽

所谓“封装”,指两方面的含义:

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

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

(如摄像机内部的电路板和机械控制部件是隐蔽的,只留下按键(接口)供用户操作,简化了操作,也提高了产品安全性)。

4.继承与重用

在已有的类的基础上,增添一些新的属性和行为就建立了一个新类。简化了程序设计的步骤。

白马白色,白马继承了马的基本特征,增添了颜色这个属性,马是父类(基类),白马是子类(派生类),“白公马”是白马的子类,以此类推。

C++提供了继承机制,采用继承的方法可以很方便地利用一个已有的类建立一个新的类,这就可以重用已有软件中的一部分甚至大部分,大大节省了编程工作量。这就是常说的“软件重用”(software reusability) 的思想。大大缩短了软件开发周期,对大型软件的开发具有重大意义

5. 多态性

如果有几个相似而不完全相同的对象,有时人们要求在向它们发出同一个消息时,它们的反应各不相同,分别执行不同的操作。这种情况就是多态现象

如,在Windows环境下,用鼠标双击一个文件对象,(这就是向对象传送一个消息),如果对象是一个可执行文件,则会执行此程序,如果对象是一个文本文件,则启动文本编辑器并打开该文件。

在C++中,所谓多态性(polymorphism)是指: 由继承而产生的相关的不同的类,其对象对同一消息会作出不同的响应。多态性是面向对象程序设计的一个重要特征,能增加程序的灵活性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值