-
這個是重寫 iOS開發(fā)的都這么水嗎查看全部
-
假設(shè)你為你子類引入的任何新的屬性都提供了默認值,請遵守以下2個規(guī)則:
規(guī)則1
如果你的子類沒有定義任何指定初始化器,它會自動繼承父類所有的指定初始化器。
規(guī)則2
如果你的子類提供了所有父類指定初始化器的實現(xiàn)——要么是通過規(guī)則1繼承來的,要么通過在定義中提供自定義實現(xiàn)的——那么它自動繼承所有的父類便捷初始化器。
就算你的子類添加了更多的便捷初始化器,這些規(guī)則仍然適用。
注意
子類能夠以便捷初始化器的形式實現(xiàn)父類指定初始化器來作為滿足規(guī)則2的一部分。
查看全部 -
swift 引用類型判讀是否相等用 === 判斷
如:
class persion
var persion1 = persion
persion1 === persion
查看全部 -
繼承: 子類可以使用父類的方法和屬性,final 修飾的類不能再被繼承
查看全部 -
static let shareInstanc = DOwnMangaer()
? ? private init( ){
?? ? ? ?
? ? }
查看全部 -
open public internal fileprivate private
查看全部 -
lazy property ?懶加載屬性,保證屬性值只被計算一次就保存下來,計算屬性每次調(diào)用都會重新計算
var address: String{
? ? ? ? return ""
? ? }
? ? lazy var myAddress: String = {
?? ? ? return "\(self.latitude)" + "\(langtitude)"
? ? }()
? ? var width: Int{
? ? ? ? set{
?? ? ? ? ? ?
? ? ? ? }
? ? ? ? get{
? ? ? ? ? ? return latitude - langtitude
? ? ? ? }
? ? }
查看全部 -
屬性觀察器: didSet{} ?willSet{}?
查看全部 -
靜態(tài)方法又叫類型方法 方法前面添加 ?static 關(guān)鍵字就可以
查看全部 -
類是引用類型傳遞,結(jié)構(gòu)體是值傳遞類型,類可以被繼承,結(jié)構(gòu)體是更輕量級的,存儲在系統(tǒng)的棧里面,類存儲在系統(tǒng)的堆里面。
結(jié)構(gòu)體適合描述存儲值的對象。rect point?
類適合描述對象 人 車?
查看全部 -
計算屬性默認是只有g(shù)etter方法的,可以重寫setter getter,是通過存儲屬性計算得來的,類和結(jié)構(gòu)體都有這兩種屬性。長方形的size 和 origin都是存儲屬性,center是計算屬性
查看全部 -
給屬性添加static關(guān)鍵字就成了類型屬性,被類持有,生命周期跟應(yīng)用程序一樣長
查看全部 -
引用類型是指向,改變自身是允許的,結(jié)構(gòu)體和枚舉 值類型是拷貝,改變自身需要mutating 特殊處理
查看全部 -
結(jié)構(gòu)體是值類型,賦值就是開辟新的內(nèi)存,并拷貝值為副本。 類是引用類型,賦值即兩個指針指向同一塊內(nèi)存區(qū)域
查看全部 -
結(jié)構(gòu)體的創(chuàng)建。初始化()的時候會自動提示,結(jié)構(gòu)體的常變量使用,結(jié)構(gòu)體相比于類,類要更負責功能更強大一些
查看全部 -
枚舉:是一種新的 數(shù)據(jù)類型,不是整型不是字符串。枚舉能夠窮舉
enum Direction{
? ? case NORTH,SOUTH,EAST,WEST
}
func showDirection(direction:Direction) -> String{
? ? switch direction {
? ? case .NORTH:
? ? ? ? return "北京"
? ? case .SOUTH:
? ? ? ? return "南家"
? ? case .EAST:
? ? ? ? return "動靜"
? ? case .WEST:
? ? ? ? return "西苑"
? ? }
}
showDirection(direction: .SOUTH)
查看全部 -
子類中 如果實現(xiàn)了父類的所有指定構(gòu)造函數(shù),那么子類自動將父類的便利構(gòu)造函數(shù)繼承
查看全部 -
結(jié)構(gòu)體 struct 枚舉 enum ?int ?....是值類型:相當于深拷貝,拷貝的不僅僅是對象本身還有地址。
class ,閉包 block 是引用類型:相當于淺拷貝,拷貝的是指針
查看全部 -
使用static或者class修飾類型屬性或者類型方法 兩者區(qū)別是static不能被子類重寫而class可以被子類重寫查看全部
-
子類構(gòu)造函數(shù)的繼承規(guī)則查看全部
-
swift中的單例模式 使用靜態(tài)屬性(類屬性),調(diào)用一次private的init函數(shù),初始化這個單例查看全部
-
didSet和willSet不會再初始化階段init調(diào)用 也不會再首次給觀察的屬性賦值時調(diào)用?查看全部
-
屬性觀察器的應(yīng)用 觀察主題屬性,根據(jù)主題的變更,調(diào)整相應(yīng)的屬性改變查看全部
-
willSet后跟的newValue表示即將設(shè)置的新值查看全部
-
didSet后跟上變量oldValue表示完成這次set方法之前的值查看全部
-
屬性觀察器 如果需要監(jiān)聽一個屬性的變化做對應(yīng)操作,可以再屬性后跟上大括號并用didSet關(guān)鍵字寫一段邏輯查看全部
-
類屬性 在屬性的聲明前加上static關(guān)鍵字查看全部
-
1 如果子類沒有實現(xiàn)任何負類的指定構(gòu)造函數(shù),則自動繼承父類的所有指定構(gòu)造函數(shù); 2 如果子類實現(xiàn)了負類所有的指定構(gòu)造函數(shù),則自動繼承父類的所有便利構(gòu)造函數(shù);查看全部
-
枚舉中也可寫方法查看全部
舉報