程序员Full Stack Developer程序园

iOS swift-deinit

2019-04-25  本文已影响3人  samtake

deinit

deinit: 析构函数(destructor) 与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数和OC中的dealloc 一样的,通常在deinit和dealloc中需要执行的操作有:

deinit {
    NotificationCenter.default.removeObserver(self)
}

@objc func

在 Swift 代码中,使用@objc修饰后的类型,可以直接供 Objective-C 调用。可以使用@objc修饰的类型包括:

@objc func backButtonClick(button:UIButton) -> Void {
    navigationController?.popViewController(animated: false)
}

_下划线 忽略作用

extension 扩展

convenience 便利

使用convenience修饰的构造函数叫做便利构造函数
便利构造函数通常用在对系统的类进行构造函数的扩充时使用。
便利构造函数的特点:
1、便利构造函数通常都是写在extension里面
2、便利函数init前面需要加载convenience
3、在便利构造函数中需要明确的调用self.init()

as

1、和 "as" 右边类型一致

2、是右边类型的子类(这种情况在java里叫向上转型)

as!

如果 碰到as 左边类型是右边类型的父类则会报错!(as不可以用于父类转子类,用java话说,不支持向下转型),由此可用as!(强转)

编译器也会提示你用as!, as!强转如果类型不符合会报错。

as?

as? 相当于optional类型,如果转换失败返回nil。

上一篇 下一篇

猜你喜欢

热点阅读