python析构函数和特殊的call方法

高洛峰
高洛峰 原创
2016-11-19 09:57:04 773浏览
# -*- coding: utf-8 -*-
"""
Created on Sun Nov 13 23:19:03 2016
 
@author: toby
"""
#知识点:析构函数和特殊的__call__方法
'''
析够函数:
其中的“__del__”就是一个析构函数了,当使用del 删除对象时,会调用他本身的析构函数,
另外当对象在某个作用域中调用完毕,在跳出其作用域的同时析构函数也会被调用一次,这
样可以用来释放内存空间。
'''
class Foo:
    def __init__(self):
        pass
     
    def __del__(self): #析构函数 __del__函数永远是在最后执行
        print '销毁'
         
    def go(self):
        print 'go'
               
    def __call__(self): 
        print 'call'
 
f1 = Foo() #实例化对象
f1.go() #执行go方法
f1()    #这里的调用实际上是直接执行__call__方法里面的代码


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。