学习笔记来源于:b站上的python高级编程的学习资料
这个一系列的教程真的推荐!!!
面向对象编程——Object Oriented Programming
一、面向过程和面向对象的基本概念
- 面向过程(怎么做)
- 把完成某一个需求的所有步骤从头到尾逐步实现,根据开发需求,将某些功能独立的代码封装成一个个函数,最后完成的代码就是不同的函数
- 注重步骤与过程不注重职责分工,开发大的哈代码会变得复杂,开发难度大
- 面向对象(谁来做)
- 面向对象是一个更大的封装,根据职责在一个对象中封装多个方法
- 在完成某一个需求之前,首先确定职责——要做的事情(方法),根据职责的不同确定不同的对象,在对象内部封装不同的方法(多个),最后完成的代码就是顺序的让不同的对象调用不同的方法
- 注重对象和职责,不同的对象承担不同的职责,更加适应复杂的需求变化,是专门应对复杂的项目开发用的,提供特定的套路,需要在面向过程的基础上再学习一些面向对象的语法
二、类和对象的概念
类和对象是面向对象编程的两个核心概念
1、类
- 类是对一群具有相同特征或者行为的事物的一个统称,是抽象的,不能直接使用
- 特征——属性
- 行为——方法
- 类就像是制造飞机的图纸,是一个模板,是负责创建对象的
2、对象
- 对象是由类创造出来的一个具体存在,可以直接使用
- 由哪个类创建出来的对象,就拥有哪一个类中定义的:属性和方法
- 对象就像是用图纸造出来的飞机
3、类和对象的关系
- 类是模板,对象是根据类这个模板创建出来的,应该是先有类,再有对象
- 类只有一个,而对象可以有好多个,不同的对象之间的属性可能会不同
- 类定义了属性和方法,对象中就有什么属性和方法,不可能多也不可能少
4、类的设计
在使用面向对象开发之前,应该首先分析需求,确定一下程序需要包含那些类!
要设计一个类,通常需要满足以下三个要素:
- 类名:这类事物的名字,满足大驼峰命名法(第一个单词以小写字母开始;从第二个单词开始以后的每个单词的首字母都采用大写字母;无下划线)
- 属性:这类事物具体有什么特征
- 方法:这类事物具有什么样的行为
属性和方法的确定:
- 属性:对对象的特征的描述
- 方法:对象具有的行为(动词)
比如: