面向对象的基本概念
- 过程和函数
- 过程 类似于函数, 只能执行, 但是没有返回值
- 函数 不仅能执行, 还可以返回结果
面向过程和面向对象基本概念
- 面向过程
- 把完成某个需求的所有步骤从头到尾逐步实现
- 根据开发需求, 将某些功能独立的代码封装成一个又一个函数
- 最后完成的代码, 就是顺序的调用不同的函数
- 面向对象
- 在完成某一个需求前, 首先确定职责 – 要做的事情(方法)
- 根据职责确定不同的对象, 在对象内部封装不同的方法
- 最后完成的代码, 就是让不同的对象 调用 不同的方法
类和对象
类和对象的概念
类和对象是面向对象编程的两个核心概念
1.1 类
类 就相当于制造飞机时的图纸, 是一个模板, 是负责创建对象的
- 类是对一群具有相同特征或者行为的事物的一个统称, 是抽象的, 不能直接使用
- 特征被称为属性
- 行为被称为方法
1.2 对象
- 对象 就相当于用 图纸 制造 的飞机
- 对象是由类创建出来的一个具体存在, 可以直接使用
- 由哪一个类创建出来的对象, 就拥有在哪一个类中定义的:
- 属性
- 方法
类和对象的关系
- 类是模板, 对象是根据类这个模板创建出来的, 应该先有类, 再有对象
- 类只有一个, 而对象可以有很多个
- 类中定义了什么属性和方法, 对象中就有什么属性和方法, 不可能多, 也不可能少
3.1 类的设计
- 类名 这类事物的名字,
类的设计
- 在使用面向对象开发前, 应该首先分析一下程序中需要包含哪些类
- 在程序开发中, 要设计一个类, 通常需要满足一下三个要素:
- 类名 : 这类事物的名字, 满足大驼峰命名法(每个单词的首字母大写)
- 属性 : 这类事物具有什么样的特征
- 方法 : 这类事物具有什么样的行为
- 类名的确定
名词提炼法 分析整个业务流程, 出现的名词, 通常就是找到的类 - 属性和方法的确定
- 对对象的特征描述, 通常可以定义成属性
- 对象具有的行为, 通常可以定义成方法
总结
obj['x'] = 123
: 会执行对象的__setitem__
方法obj.x = 123
: 会执行对象的__setattr__
方法