python3 self-Way - Notes 24- life-cycle approach

The old rules, first on the code:

#!/usr/bin/env python3
# _*_ coding: utf-8 _*_
# File  : 生命周期方法.py
# Author: DaShenHan&道长-----先苦后甜,任凭晚风拂柳颜------
# Date  : 2019/11/10

class Person:
    __personCount = 0  #定义一个类方法,并且私有化,确保安全性。用于计数实例化了多少个对象
    def __init__(self): #实力初始化时调用这里的方法
        print("计数 +1")
        Person.__personCount +=1

    def __del__(self):#实力被释放时调用这里的方法
        print("计数 -1")
        self.__class__.__personCount -=1

    @staticmethod  #定义一个静态方法
    def  log():
        print(f"当前的人数是{Person.__personCount}")

    @classmethod #定义一个类方法
    def  log1(cls):
        print(f"当前的人数是{cls.__personCount}")

Person.personCount = 100 #尝试外部改变类方法(安全性测试)
p = Person()
p2 =  Person()
Person.log()
del p
Person.log()
Person.log1()

Run results shown in Figure:

 

 

 

Published 109 original articles · won praise 23 · Views 300,000 +

Guess you like

Origin blog.csdn.net/qq_32394351/article/details/102993800