一个类的实例对象所占资源被收回时,析构器将会被调用。只有类才有析构器。
析构器如何工作
Swift 能够更加对象的引用计数,来自动释放一个对象。当我们现在一个对象被释放前做一些处理工作,那么我们就要有自己的析构器。
每个类最多只有一个析构器,想下面这样:
deinit {
// perform the deinitialization
}
析构器在实例对象被释放前调用,不能人为的去调用它。子类会自动的继承父类的析构器,并且在子类的析构器末尾调用父类的析构器。
即使子类没有实现自己的析构器,父类的析构器也会被调用。析构器能够访问一个实例对象里的所有属性。