博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
day6-析构函数
阅读量:7085 次
发布时间:2019-06-28

本文共 717 字,大约阅读时间需要 2 分钟。

一、概述

  析构函数,第一次听说这个函数的名称,那这个函数到底是干嘛的呢?什么才是析构函数呐?

  定义:在实例销毁的时候调用的函数

二、析构函数定义

2.1 定义

class dog(object):    "dog class"    def __init__(self,name):        self.name = name    def sayhi(self):        print("the dog {0} is sayhi".format(self.name))    def __del__(self):     #定义析构函数        print("del.....run...")d = dog("alex")del dimport timetime.sleep(5)#输出del.....run...

①析构函数说明时候调用呢?

其实每一个对象都是一个应用,就像每一个房间都有门牌号一样, 只要这个对象的引用被清空时,就会自动执行,就像上面的del d,其实python中有自动垃圾回收机制,会定时去的去回收一些被清空的应用,而析构函数就是在引用被清空之后会自动执行

②析构函数的作用?

比如说server端接受很多客户端的连接,当你手动屏蔽你的sever端的时候,这个时候客户端还在正常的连接,如果sever端用类写的,你就可以delete server端的同时,在__del__()写一些东西,说去close掉很多客户端的连接。说白了,析构函数就是做一些程序的收尾工作。

转载于:https://www.cnblogs.com/zhangqigao/articles/6886143.html

你可能感兴趣的文章
Azkaban的Exec Server分析 30:JobRunner如何构造一个Job大揭秘
查看>>
varnish-cache:高性能反向代理缓存服务器和http加速器
查看>>
61.使用yum下载rpm包
查看>>
Completely Uninstall Node.js from Mac OS X
查看>>
Linux中什么是动态网站环境及如何部署
查看>>
搜狗输入法初体验
查看>>
在 RHEL/CentOS 上为Web服务器架设 “XR”(Cro***oads) 负载均衡器
查看>>
消息中间件--RabbitMQ
查看>>
Redis数据库学习(1)
查看>>
破除对于XP半开连接数限制的误解
查看>>
公开课学习总结
查看>>
SEO代码优化的方法
查看>>
Java记录 -77- 增强的for循环与自动拆装箱
查看>>
URI和URL的区别
查看>>
rsync+inotify配置
查看>>
我的友情链接
查看>>
Spring Security 杂记2
查看>>
Android学习笔记系列
查看>>
Struts原理
查看>>
@SuppressWarnings("serial")在Java中有什么作用?
查看>>