Python 소멸자와 생성자의 사용법에 대한 설명

巴扎黑
풀어 주다: 2017-07-17 16:10:14
원래의
2863명이 탐색했습니다.
class Test(object):
    def __init__(self, name):
        self.name = name
        print('这是构造函数')

    def say_hi(self):
        print('hell, %s' % self.name)

    def __del__(self):
        print('这是析构函数')

obj = Test('bigberg')

obj.say_hi()

del obj

#输出
  这是构造函数


  hello bigberg


  这是析构函数
로그인 후 복사

 

Constructor

클래스의 내용 상태를 초기화하는 데 사용되며 Python에서 제공하는 생성자 유형 __init__(), 즉 클래스가 인스턴스화될 때 함수가 실행됩니다. __init__( ) 메서드는 선택 사항, 제공되지 않으면 Python은 기본 __init__ 메서드를 제공합니다.

Destructor

  "__del__"은 객체를 삭제하기 위해 del을 사용할 때 자체 소멸자가 호출됩니다. 또한 해당 객체가 특정 범위에서 호출되면 다른 범위를 벗어나게 됩니다. 소멸자는 범위와 동시에 한 번 호출되며, 이는 메모리 공간을 확보하는 데 사용할 수 있습니다.

 __del__()도 선택 사항입니다. 제공되지 않으면 Python은 백그라운드에서 기본 소멸자를 제공합니다

 소멸자를 명시적으로 호출하려면 del 키워드를 사용할 수 있습니다: del obj
가비지 수집 메커니즘  
s = '123'
print('del...running')
del s
로그인 후 복사

  del을 사용하여 객체를 삭제할 때 객체의 메모리 공간이 직접 지워지지 않습니다. Python은 재활용을 처리하기 위해 '참조 계산' 알고리즘을 사용합니다. 즉, 객체가 해당 범위 내의 다른 객체에 의해 더 이상 참조되지 않으면 Python은 자동으로 객체를 지웁니다.

 소멸자 __del__()은 삭제된 객체가 참조될 때 해당 객체의 메모리 공간을 자동으로 지웁니다.

생성자:

은 클래스의 콘텐츠 상태를 초기화하는 데 사용됩니다. Python에서 제공하는 생성자는 __init__();

입니다. 즉, 클래스가 인스턴스화될 때 이 함수가 실행됩니다. 그런 다음 먼저 초기화할 속성을 이 함수에 넣을 수 있습니다. 다음 프로그램:

Python 소멸자와 생성자의 사용법에 대한 설명

__init__() 메서드는 선택 사항입니다. 제공되지 않으면 Python은 기본 __init__ 메서드를 제공합니다.

일반 데이터 수집에는 정의된 get 및 set 메서드가 필요합니다


위 내용은 Python 소멸자와 생성자의 사용법에 대한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!