浅谈c++中的类与对象

众所周知,C语言与C++最大的差别就在于---------
相较于C语言的面向过程(函数),大多数C++、Java、Python等语言是一种面向对象(类)的语言。
我们都知道面向过程的设计方法重点是 围绕着问题的解决过程分析问题。如何实现的细节和过程,将数据与函数分开。他的形式为 主模块+若干个子模块(main()+子函数)特点是自顶向下,逐步求精——功能分解的但同样也有着明显的缺点,那就是**效率低,程序的可重用性差,封装性差。**因此面向对象的程序设计便应运而生!


首先,我们应该了解什么是面向对象

面向对象(Object Oriented, OO)的程序设计的思路和人们日常生活中处理问题的思路是相似的。在自然世界和社会生活中,一个复杂的事物总是由许多部分组成的。比如当人们生产汽车时,分别设计和制造发动机、底盘、车身和轮子,最后把它们组装在一起。在组装时,各部分之间有一定的联系,以便协调工作。而面向对象的程序设计的基本思路便为使用现实世界的概念抽象地思考问题从而自然地解决问题。

了解了面向对象之后,我们应该去思考并学习,到底何为对象?

对象是人们要进行研究的任何事物,是现实世界中的一个实体,比如学生便是一个对象。
任何对象都拥有自己的数据和操作对象所拥有的数据称为对象的属性
在现实世界中,对象都具有一定的行为,比如,学生要上课、下课、写作业等等。
而对象则实现了数据和操作的封装,即对象=数据(数据类型.属性)+ 操作,对象的出现,实现了数据与操作的有机结合,使其封装性变的更加优秀。

了解作为面向对象程序设计与面向过程程序设计的最大区别"类",对我们更好地理解对象这一概念有着重要的作用,因此了解并理解什么是类(class),使我们必须要做到的

类是对象的抽象,相同特征的一组对象进行抽象便形成了类。
比如我们可以对不同的学生个体进行抽象,这样便形成了学生类。本质上讲,类也是一种数据类型,是由程序员根据处理问题的需要而自己创建的一种新的数据类型,即用户自定义的数据类型,而一个具体的对象可以视为属于这一数据类型的一个变量。任何一个对象都是通过类的实例化之后得到的。

了解了类之后,便是我们的"重头戏"了!没错,这便是面向对象的程序设计

①面向对象程序设计的核心任务是:
类的确定和对象的创建,而不是将各个具体的对象逐一进行描述。忽略各具体对象的非本质特征,抽象出本质特征与共性,然后形成类的概念,对象是类的实例。这样大大的简化了我们的代码,并且使代码所要表达的内容更加通俗易懂
②面向对象程序设计有以下几条好处:
1.写程序不再是从计算机的角度考虑问题了,而是站在
人类思维的角度
2.程序的可扩展性要比其他不是面向对象的程序设计语言好
3.能最大限度保护已有程序代码
③面向对象的方法:
目的:
 实现软件设计的产业化。
观点:
 自然界是由实体(对象)所组成。
程序设计方法:
 使用面向对象的观点来描述模仿并处理现实问题。
要求:
 高度概括、分类、和抽象。

最后,什么是抽象,也是我们应该了解的内容

抽象是对具体对象(问题)进行概括,抽出这一类对象的公共性质并加以描述的过程。
 先注意问题的本质及描述,其次是实现过程或细节。
 数据抽象:描述某类对象的属性或状态(对象相互区
别的物理量)。
 代码抽象:描述某类对象的共有的行为特征或具有的
功能。
 抽象的实现:通过类的声明

以上便是本篇博客的所有内容了,本篇博客有部分内容摘自博主学校的教学内容,希望能够帮助每一个看到这篇博客的朋友。往后的日子里相关内容会继续更新,欢迎读者交流,以期待不断的成长与进步!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值