OOP (Object Oriented Programming)
1.面向对象的定义
1.面向过程:根据业务逻辑从上到下写代码
2.面向对象:将数据与函数绑定在一起进行封装,这样能更快的开发程序,减少了重复编写代码的过程
3.开发过程的思路是将数据与函数按照执行的逻辑顺序组织在一起,数据与函数分开考虑。
4.面向对象(object-oriented ;简称: OO)至今还没有统一的概念 我这里把它定义为:按人们 认识客观世界的系统思维方式,采用基于对象(实体)的概念建立模型,模拟客观世界分析、设 计、实现软件的办法。
5.面向对象编程,将软件系统中相近似的操作逻辑和操作应用数、状态,以类的形式描述出来,以对象为实例的形式可以在系统中反复使用,提高软件开发效率。
6面向对象是一种设计思想
1)符合人们的思考习惯
2)把执行者变成指挥者
3)简化功能,把复杂的事情简单化
7面向对象的三大特征
封装,继承,多态
2类和对象
1.具有共同特征和行为的一组对象,被称为类。
2.类是对对象的抽象描述
对象是对类的具体体现
类是创建对象的模板
3.类的构成
类的名称:类名
类的属性:一组数据。。。成员变量
类的方法:允许对类进行操作的方法/行为。。。成员方法
例:
名称:人
属性:年龄,身高
方法:跑,跳
4类的抽象
拥有相同或类似行为和属性的对象都可以抽象成一个类
5定义类
class 类名:
。。。。。方法列表
旧:class A()
新:class A(object)
类名采用大驼峰命名法
创建一个对象:
abc=A()这样产生一个A的实例化对象,此时可以通过实例化对象abc来访问属性或方法
通过abc.number='5'给对象添加属性
abc是一个对象,拥有方法和属性
6__init__()方法
在初始化的时候调用init函数来为对象设置初始值
只要使用某个类,自动调用这个类的init函数
例:
class Car:
def__init__(self):
self.number=4
self.color='purple'
__init__(self)中的self参数不需要开发者传递,python会自动把当前的对象引用传递进去。
7应用:创建多个对象
8魔法方法
1.打印id
将lanbojini直接用print输出
2.定义__str__()的方法
3.在python中方法名如果是__xxxx__()的,那么就有特殊的功能,因此叫做“魔法”方法
当使用print输出对象的时候,只要自己定义了__str__(self)方法,那么就会打印从在这个方法中return的数据
9 self
1.理解self
self表示当前对象
某个对象调用方法时,python解释器会将这个对象作为一个参数传递给self,开发者只需传递后面的参数。
2.应用-烤地瓜
·cookedLevel :这是数字;0~3表示还是生的,超过3表示半生不熟,超过5表示已经烤好了,超过8表示已经烤成木炭了!我们的地瓜开始时时生的
·cookedString :这是字符串;描述地瓜的生熟程度
·condiments :这是地瓜的配料列表,比如番茄酱、芥末酱等
�
网友评论