面向对象基础 OOP(绪论)
// 以下是基础介绍,以通俗易懂的语言进行说明,对零基础编程小白特别友好!大佬慎入 哈哈
1. 一些很基础的介绍
-
面向对象,我们常用 “OOP” 来代称,英文全称是 “Object-oriented Programming” 。
-
至于什么是面向对象?教材里是这么说的:OOP是建立模型,体现抽象思维。
如果是零基础开始学OOP的,想必听了会很懵(本人经历过这种迷茫 哈哈)
不过个人感觉,这个学着学着就懂了,不需要特别强求在一开始就把它搞明白。 -
学习OOP的意义主要有三点:
- 让我们程序的代码更简短(方便管理和维护)
- 让我们的代码更清晰(容易读 + 理解)
- 让我们的代码设计更普遍(容易修改 & 适应变动)
重点我们再重复两遍,简短!清晰!普遍!...... 简短!清晰!普遍!
2. “面向对象”,什么是对象?
这里有两个比较重要的概念需要大致了解:对象 & 抽象。
A. 对象
-
对象可以是有形 / 无形的。
通俗地理解,万物皆可是 “对象” 。车可以是一个对象,小狗勾可以是一个对象,甚至风也可以是一个对象。
-
对象有静态特征 + 动态特征。
- 静态特征:可以用数据来描述的,例:车有4个轮胎、蚂蚁有6条腿
- 动态特征:对象的形为 / 功能,例:狗会吠、容器可以收纳
-
对象是属性和服务的结合体。
例如:车有轮胎,喇叭等,而轮胎可以充气/泄气,喇叭可以鸣笛之类的
到这里,大家应该对 “对象” 有了些许的概念,那我们继续往下看:
假设现在有两个对象,狗和猫。
狗和猫的共同点有什么?都有4条腿,都是哺乳动物,都会发出叫声 ......
那不同点呢?最明显的是叫声,狗是吠,而猫是喵。
如果抛开那些狗和猫的具体不同之处,我们可以把它们都简单地看成一个四肢的哺乳动物。
这个 “舍弃不同,寻求共同点” 的过程,实际上就是抽象。
B. 抽象
-
抽象 = 舍弃个别特征,抽取共同特征的过程
-
抽象的过程可以简单分成两类
-
数据抽象:根据施加于数据的操作来定义数据类型
一个很随性的例子:
以变量 a 为例,如果说 a = 10/2,那 a 就是一个整数;如果 a = 5/3,那 a 就是一个小数
我们不提前设定好 a 的数据类型,而是根据输入去定义 a 的类型 -
过程抽象,使用一个确定功能的操作序列
一个很接地气的例子:
如果一个 “处理食材” 的过程是,清洗食材-->去皮-->切块,
那这个过程可以使用于萝卜,也可以适用于土豆
-
以上就是一些简单的介绍啦!
由于小木是零基础开始学编程的,所以这里就用一个小白的视角来和大家分享学到的内容,希望可以帮到同样是编程小白的友友们!
如果有什么遗漏的或是错误的知识点,也欢迎各位赐教!