08-1 面向对象基础

1 面向对象基础

1.1 面向对象编程

面向过程编程:类似于工厂的流水线

  • 优点:逻辑清晰
  • 缺点:扩展性差

面向对象编程:核心是对象二字,对象属性和方法的集合体,面向对象编程就是一堆对象交互

  • 优点:扩展性强

  • 缺点:逻辑非常乱

1.2 类与对象

  • 对象:属性和方法的集合体

  • 类:一系列相同属性和方法的集合体

现实世界中先有对象后有类,python中先有类,再实例化出对象

1.3 对象的属性的查找顺序

先对象本身-->类-->父类-->父类的父类-->object-->自己定制的元类-->type

1.4 给对象定制独有属性

在__init__方法中没有出现过,属于对象自己的属性或者方法

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)  # 类调用对象绑定的方法,必须得传参
posted @ 2019-07-22 15:26  Yaco_Chen  阅读(133)  评论(0编辑  收藏  举报