初始化方法
我们现在已经知道了使用 类名() 就可以创建一个对象
当使用类名()创建对象时,python的解释器会自动执行以下操作:
1.为对象在内存中分配空间–创建对象
2.调用初始化方法为对象的属性设置初始值–初始化方法__init__
这个初始化方法就是__init__方法,__init__是对象的内置方法
__init__方法是专门用来定义一个类具有哪些属性的方法
改造初始化方法–初始化的同时设置初始值:
在开发中,如果希望在创建对象的同时,就设置对象的属性,可以对__init__方法进行改造
1.把希望设置的属性值,定义成__init__方法的参数
2.在方法内部使用self.属性名 = 形参 接收外部传递的参数
3.在创建对象时,使用类名(属性1,属性2…)调用
举例:
class Cat:
def __init__(self,new_name):
print('这是一个初始化方法')
# self.属性名 = 属性的初始值
#self.name = 'Tom'
self.name = new_name
# 在类中,任何方法都可以使用self.name
def eat(self):
print('%s 爱吃鱼' %(self.name))
# 使用类名()创建对象的时候,会自动调用初始化方法__init__
tom = Cat('tom')
# 定义属性之后,再用Cat创建对象的时候,都会拥有该属性
print(tom.name)
tom.eat()
输出:
tom
tom 爱吃鱼
在后面再生成一个猫对象:
lazy_cat = Cat('miaomiao')
print(lazy_cat.name)
lazy_cat.eat()
输出:
print(lazy_cat.name)
lazy_cat.eat()