美文网首页
init方法和构造方法

init方法和构造方法

作者: 匿隱 | 来源:发表于2019-02-11 14:27 被阅读0次

    1.init方法: init

    init方法是类中的一个特殊的对象方法,专门用来对象创建的对象进行初始化。
    当通过类创建对象的时候,系统就会自动调用init方法

    2.构造方法

    a.什么是构造方法

    函数名和类名一样的函数就是构造方法, 专门用来创建对象。
    python中声明类的时候系统会自动创建这个类对应的构造方法。

    b.构造方法的执行过程

    当我们构造方法的时候内部会先在内存中开辟空间保存对象;然后用创建的这个对象去调用inin方法,用来对对象进行初始化;
    init方法调用结束后,返回对象.

    def Person(*args, **kwargs):
        对象 = 创建对象
        对象.__init__(*args, **kwargs)
        return 对象
    

    注意: 如果类的init方法除了self以外还有其他参数,那么我们在创建对象

    class Person:
        # 类中__开头并且__结尾的方法叫魔法方法。不需要主动调用,系统会自动调用
        def __init__(self):
            print('init被调用了')
    
    class Dog:
        def __init__(self, x=0, y=9):
            print(x, y)
            print('dog的init')
    
    
    # =============构造方法和init的关系(了解)=============
    # 构造方法的伪代码
    def my_init(x, y, z=0):
        print(x, y, z)
        print('my_init')
    
    
    def my_Dog(*args, **kwargs):
        my_init(*args, **kwargs)
    
    
    my_Dog(10, 20, 34)
    my_Dog(10, 34)
    
    def main():
        # 人类
        print('====')
        p1 = Person()
        print('====')
    
        p2 = Person()
    
        # 狗类
        dog1 = Dog(10, 20)
        dog2 = Dog()
        dog3 = Dog(100)
        dog4 = Dog(y=200)
    

    相关文章

      网友评论

          本文标题:init方法和构造方法

          本文链接:https://www.haomeiwen.com/subject/ndkzdqtx.html