面向对象基础小结
一、面向对象基础小结
1.1 面向对象编程
面向过程编程:类似于工厂的流水线
- 优点:逻辑清晰
- 缺点:扩展性差
面向对象编程:核心是对象二字,对象属性和方法的集合体,面向对象编程就是一堆对象交互
- 优点:扩展性强
- 缺点:逻辑非常乱
1.2 类与对象
- 对象:属性和方法的集合体
- 类:一系列相同属性和方法的集合体
现实世界中先有对象后有类,python中先有类,再实例化出对象
1.3 对象的属性的查找顺序
先对象本身-->类-->父类-->父类的父类-->object-->自己定制的元类-->type
1.4 给对象定制独有属性
class People:
pass
p1 = Peolple()
p1.name = 'nick'
p2 = People()
p2.name = 'tank'
1.5 对象的绑定方法
class People:
def eat(self):
print(self, 'eat....')
p1 = Peolple()
p1.eat()
p1.name = 'nick'
p2 = People()
p2.eat()
p2.name = 'tank'
1.6 类与数据类型
lis = [1,2,3] # lis = list([1,2,3])
class foo:
def __init__(self,name):
self.name = name
f = foo('name')
lis.append(4) # 对象调对象绑定的方法,会自动传参
list.append(lis,4) # 类调用对象绑定的方法,必须得传