init抛出异常时不会调用deinit。
在编程中,init是一个构造函数,用于初始化对象的属性和状态。当我们创建一个对象时,会调用该对象的init方法来完成初始化操作。如果在init过程中发生异常,那么该对象的初始化将会失败,对象也不会被完全创建。
deinit是一个析构函数,用于在对象被销毁之前执行一些清理操作。它会在对象不再被引用时自动调用,以释放对象所占用的资源。但是,如果对象的初始化过程中发生异常导致对象未能完全创建,那么该对象的deinit方法也不会被调用,因为对象并没有完全初始化成功,也没有被完全创建。
因此,当init抛出异常时,不会调用deinit方法。这也是为什么在编写代码时,我们需要在init方法中处理可能发生的异常,以确保对象的正确初始化和资源的正确释放。
领取专属 10元无门槛券
手把手带您无忧上云