1.面向对象基础
1.1面向过程
过程即解决问题的步骤.面向过程的设计就好像流水线,考虑好什么时候处理什么东西
1.2面向对象
核心就是对象,世间万物皆为对象,不存在的也可以创建出来.
在python中,用变量表示特征,用函数来表示技能.具有相同特征和技能的事物就是类,对象则是这一类事物中具体的一个
1.3介绍常用的几个:
1.3.1类:
具有相同特征的一类事物
1.3.2对象/实例:
具体的某一个事物
1.3.2实例化:
类到对象的过程(调用类)
其表现形式为
def 函数名()
pass
声明类
class 类名():
pass
拓展知识:关于self:
在实例化对象时会自动将对象本身传给__init__的第一个参数,也就是self.之后只要调用方法,这个self代表的就是对象本身.
2.类有两种作用:
2.1属性引用
类名.属性名
class Person:
role='人类'
def walk(self):
print(走路)
print(Person.role)
print(Person.walk)
2.2实例化
定义和调用的固定模式:
class 类名:
def __init__(self, 参数1, 参数2):
self.属性1 = 参数1
self.属性2 = 参数2
def 函数(self):
pass
2.2.1对象名 = 类名(实参1, 实参2) # 实例化
2.2.2对象名.属性1 # 查看对象的属性
2.2.3对象名.函数() # 调用类内部的函数
3.1类的名称空间与对象的名称空间:
创建一个类就会产生一个类的名称空间,用来存储类中所有的名字,这个名字可以称为类的属性
3.1.2类有两种属性:
3.1.2.1静态属性:
直接在类中定义的变量
3.1.2.1动态属性:
定义在类中的方法(函数)
- 创建对象就会产生一个对象的名称空间,存放对象的属性
-
在对象属性会先从自己的名称空间找属性,找不到则去类,类也找不到则去父类....最后找不到就抛出异常