python学习Day16--面向对象
【基本知识点】
2020-02-10 19:31:14
1、类:具有相同属性和技能的一类事物
2、对象:具体的类的表现,具体的实实在在的一个实例
(人是一类,太白是一个对象;狗是一类,我家旺财是一个对象)
1 class person: 2 '''类体:两部分——变量部分,方法(函数)部分''' 3 mind='有思想' # 变量,静态变量,静态字段 4 animal='高级动物' 5 Faith='有信仰' 6 7 def work(self): # 方法,函数,动态变量 8 print("人类都会工作...") 9 def shopping(self): 10 print("人类可以消费...")
3、两个角度分析面向对象
(1)类名的角度
A.操作类中的静态变量:
#1,person.__dict_查询类中的所有内容(不能进行增删改操作)
print(person.__dict__['Faith']) #有信仰
#2,万能的 . 对类中的单个变量进行增删改查
print(person.mind) # 有思想(查)
person.money='运用货币' # 增
person.mind='无脑的' # 改
del person.mind # 删
B.操作类中的方法:(工作中基本不用)person.work(111)——必须传参
(除了类方法,静态方法 需要类名调用外,剩下的方法都要对象调用)
(2)对象的角度
person() # 类名+() 过程:实例化的过程(创建一个对象的过程)
#person() 实例化对象,实例,对象
#1,只要类名+()产生一个实例(对象,对象空间)
#2,自动执行类中的__init__方法,并将对象空间传给__init__的self参数
#3,给对象封装相应的属性(比如,self.name="123" self.age=123)
#4,也可以实现增删改查
#5,对象操作类中的静态变量:只能查询
#6,对象调用类中的方法(第一个参数是不用传值的)(工作中是通过对象执行类中的方法,而不是类名)
#7,print(ret.__dict__) 查询对象中所有的内容