Python构造函数与析构函数(__init__()和__del__())

构造函数

构造函数,在类实例化时会调用的函数

定义类Myclass

class Myclass:

在Myclass类中声明__init__()方法

class Myclass:
    def __init__(self):
        print('Hello,World')

现在,我们已经声明了__init__()方法,这个构造函数将打印
”Hello,World“

实例化对象

class Myclass:
    def __init__(self):
        print('Hello,World')


Myclass_object = Myclass()

这个对象Myclass_object初始化完成,调用__init__方法
因为类创建对象的时候将调用构造方法

添加析构函数

析构函数将完成一些清理工作,Java中没有析构函数,因为它拥有垃圾回收的功能,不像C++语言需要手动delete对象,在C++中,类的析构方法如下定义

class Myclass{
     
public:
Myclass(){
     };//C++构造函数
~Myclass(){
     };//C++析构函数
};

与Python语言不同,Python语言的析构方法是__del__方法

class Myclass:
    def __init__(self):
        print('Hello,World')

    def __del__(self):
        print('Hello_World')


Myclass_object = Myclass()

添加完毕

class Myclass:
    def __init__(self):
        print('Hello,World')

    def __del__(self):
        print('Hello_World')


Myclass_object = Myclass()
del Myclass_object

手动delete Myclass类的对象

构造函数的参数

class Myclass:
    def __init__(self, value):
        print(value)

    def __del__(self):
        print('Hello_World')



在__init__方法中定义了参数value,调用print函数打印这个参数
这时的初始化方法

Myclass_object = Myclass(1)

结果应为打印1和"Hello_World"

警告

构造函数没有返回值

析构函数同样没有返回值

你可能感兴趣的:(Python,python)