1. C++语言与OO思想

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dugudaibo/article/details/82707627

本博客主要内容为 “小甲鱼” 视频课程《C++快速入门》学习笔记,在这里仅作学习交流。本人为C++初学者,在文章中可能出现一些错误或者不准确的地方,如发现请积极指出,十分感谢。
也欢迎大家一起讨论交流,如果你觉得这篇文章对你有所帮助,记得评论、点赞哦 ~(。・∀・)ノ゙

1.面向人群

  本文主要面向具有一定编程经验的小伙伴增进自己的编程能力和思想。但是由于作者我也是一个小白啦~所以即使编程能力很弱的同学,在这里应该会得到较多的收获。我将从一个计算机编程小菜鸡的角度,分享自己在学习过程中的点点滴滴的。

2. 什么是OO思想?

  众所周知,C语言与C++语言的区别就在于C++是面向对象(Object-oriented,OO)的。在面对对象的思想中,任何事物都可以被看做一个对象。一个再复杂的模型结构都是由千千万万个对象组成的。

  例如:地球可以看做一个相当复杂的对象。地球上的每种动物、每种植物、空气、水、土壤等都是对象。它们彼此之间互相联系、组合,最终形成了地球。而对于每个对象,抽象起来最终可以分为两个要素:属性行为

  因此程序员主要关注的是一个个对象,而不再是一个个函数和变量。而每个对象都是一个完成的独立个体,它是由相关的属性行为组合,与外界分隔。

  我们每天接触到的图形用户界面(GUI)就是一个个对象,比如word和excel,它们都有这一些属性比如说窗口大小、按钮的位置;也都有这一些行为,比如说最大化、最小化和还原等。面向对象在图形用户界面(GUI)编程方面的能力是相当出众,以至于人们在那些并不直接支持面向对象的语言(例如C)中也创建了一些模拟OO的软件结构,以便进行GUI编程。

3. OO思想的特点

3.1 封装

  封装意味着把对象的属性和方法结合成一个独立的系统单位,并尽可能隐藏对象的内部细节。封装是面向对象思想描述的基础,从此程序员面对的就不再是许多复杂的函数和过程实现,而是少数具有行为能力的个体实例。

3.2 抽象

  抽象的过程是对具体问题进行概括的过程,是对一类公共问题进行统一描述的过程。为了使某些必要的信息得以顺利的交流,设计者必须制定一个抽象,就如同一个协议,一个得到所有参与活动的有效个体支持的协议。

3.3 继承

  子类对象拥有与其基类相同的全部属性和方法,称为继承。这个很好理解,例如我们都继承了父母的属性,如鼻子、眼睛、嘴等;和一些行为:吃饭、睡觉等。

3.4 多态

  多态是指在基类中定义的属性和行为被子类继承后,可以具有不同的数据类型或者表现行为等特性。假如动物是一个基类,它的子类有老虎、兔子、狗、小鸟。作为动物有一个行为定义为Move(),那么这些子类继承下来后会根据自己的特性采取不同个性的Move()方式。比说老虎移动是奔跑,小鸟移动是飞行等。

猜你喜欢

转载自blog.csdn.net/dugudaibo/article/details/82707627