python - 面向对象 - 初始化方法__init__

初始化方法
我们现在已经知道了使用 类名() 就可以创建一个对象
当使用类名()创建对象时,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()

猜你喜欢

转载自blog.csdn.net/weixin_43067754/article/details/85269431