day26 Pyhton 面向对象复习
一
class 类名():
pass
对象 object
对象 = 类名()
class Person: pass print(Person)#<class '__main__.Person'> alex = Person() yuan = Person() print(alex)#<__main__.Person object at 0x00000000029757B8> print(yuan)#<__main__.Person object at 0x0000000002985630>
class Person: def __init__(self,name,sex,hp,mp,ad): #本身就存在的内置的方法 # self是一块内存空间 print(name,sex,hp,mp,ad) alex = Person('alex','不详',10,10,0.1) 类名()相当于执行类中的__init__方法
class Person: # 类 def __init__(self,name,sex,hp,mp,ad): self.name = name # 属性 属于对象的值 - 对象属性 self.sex = sex self.hp = hp self.mp = mp self.ad = ad alex = Person('alex','不详',10,10,0.1) # 实例化 yuan = Person('yuan','male',100,100,10) # 实例化 print(alex.name) print(yuan.name)
# 什么是类 ? 具有相同属性和方法的一类事务(框架 模子) # 什么是对象 ? 对象是类中一个具体的例子(拥有具体的属性值和具体的方法) # 对象就是类的实例化,类的实例 # 什么是实例 ? 实例完全和对象是一样的 # 什么是实例化 ? 是由类创建对象的过程 # 定义类的关键字 : class 类名首字母大写 # 类名能做什么? # 实例化 # 调用类中的静态属性 # 实例化的过程 : 对象名 = 类名(参数) # 1.创建一个属于对象的空间 # 2.将这个空间的地址和参数传递给__init__方法 # 3.执行init方法 # 4.将对象的空间返回给对象名 # 静态属性 : 所有的这个类的对象都共有的属性\ # 对象能做什么? # 调用对象的属性 # 调用类中的方法(动态属性) # 什么是对象的属性 : 存储在实例化之后创建的空间中的所有变量都是对象的属性 # 每一次实例化产生的空间都是独立的,每一个对象都有自己的属性值 # 什么是动态属性: # 定义在类中的函数,自带一个self,就是调用这个方法的对象本身
# 扩展\了解的知识点 # print(alex.__dict__) # alex.__dict__['name'] = 'alex_sb' # print(alex.name) # 尝试 调用这些对象的属性(能不能修改,能不能在实例化之后再给对象添加新的属性) # 查看属性值 # print(alex.hp) # 修改属性的值? 如何修改? # alex.hp = 9 # print(alex.hp) # 如何给一个对象添加属性 # alex.level = 1 # print(alex.level) # 删除属性的值 # del alex.level # print(alex.level)