在一个类的实例被释放之前,析构函数被立即调用。用关键字deinit来表示析构函数,析构函数只适用于类类型(对象的内存被回收之前被隐式调用,对应OC的dealloc方法,主要执行一些额外操作,例如释放一些持有资源,关闭文件,断开网络等)
析构方法原理
Swift会自动释放不在需要的实例以释放资源。
Swift通过自动引用计数(ARC)处理实例的内存管理
通常当你的实例被释放时不需要手动去清理,但是,当使用自己的资源时,可能需要进行一些额外的清理。例如:如果创建了一个自定义的类来打开一个文件,并写入一些数据,可能需要在类实例被释放之前关闭改文件
语法
1 | deinit { |
例子
1 | class FileHandler { |
1 | class Person { |