swift的使用

“(value)” 這種方式轉(zhuǎn)化為自字符串進(jìn)行輸出
swift 中的字典和數(shù)組都是范型的, var arr = [string] 吮蛹,string類型的數(shù)組瞳别,var arr = [AnyObject] 存儲的數(shù)據(jù)還沒有確定。


string數(shù)組
swift的字典使用

dict 是字典實現(xiàn)簡單的復(fù)制县昂,可以看到類型的不可以亂來替換的邢疙,除非我們使用的是any棍弄,或者anyObject望薄。


同樣可以使用while,for

字典for循環(huán)
swift函數(shù)返回元組

元組返回
不帶參數(shù)的構(gòu)造函數(shù)

帶有參數(shù)的構(gòu)造函數(shù)
類方法

類的繼承和方法重寫
類的方法和動態(tài)擴展
extension 類名 {
 在其中加入擴展的方法:    
}

swift 的接口

(但是方法沒有實現(xiàn))
類中要“繼承”這個接口的同時還要實現(xiàn)接口的方法呼畸,也就是類繼承了接口之后痕支,就必須實現(xiàn)方法。


類接口

swift的命名空間

相關(guān)的內(nèi)容方法的調(diào)用蛮原,在極客這個類的命名的空間下面的方法

swift中控件和類的綁定

viewcontroller的類和storyBoard進(jìn)行綁定的時候卧须,我們是必須寫一個初始化的方法,decoder也就是編碼的方法儒陨,這樣我們就能夠?qū)崿F(xiàn)了相關(guān)的代碼的編寫花嘶。


swift控件和代碼的綁定

swift中的便利構(gòu)造器和構(gòu)造器鏈

【swift面向?qū)ο蟾呒?—— 類的構(gòu)造和析構(gòu)】

類的構(gòu)造器
兩段式構(gòu)造
構(gòu)造器的繼承和重寫
可能失敗的構(gòu)造器的傳播
析構(gòu)器

【類的指定構(gòu)造器和便利構(gòu)造器】
1、一個類中至少有一個指定構(gòu)造器蹦漠,其必須負(fù)責(zé)初始化類中所有的實例存儲屬性椭员。
2、便利構(gòu)造器屬于次要的笛园、輔助性的構(gòu)造器
3隘击、類中可以不定義便利構(gòu)造器,便利構(gòu)造器必須調(diào)用同一個類中的其他構(gòu)造器完成初始化
4喘沿、便利構(gòu)造器的語法格式: convenience init(){}

只有類中才有“便利構(gòu)造器”這個歹念闸度。
有可能在枚舉以及狗仔上有構(gòu)造方法竭贩,但是蚜印,便利構(gòu)造器只有在類中才會有的。
便利構(gòu)造器其顧名思義就是構(gòu)造更加便利的構(gòu)造器留量,但是窄赋,最終到鏈的盡頭都是可以進(jìn)行指定構(gòu)造器。

【類的構(gòu)造器鏈】
swift對構(gòu)造器之間的調(diào)用鏈指定了如下規(guī)則:
1楼熄、子類構(gòu)造器必須調(diào)用直接分類的指定構(gòu)造器(如果有父類)
2忆绰、便利構(gòu)造器必須調(diào)用同一個類中的其他構(gòu)造器;
3可岂、便利構(gòu)造器調(diào)用的構(gòu)造器鏈的最終節(jié)點必須是指定構(gòu)造器错敢。

簡化記憶:
1) 指定構(gòu)造器總是向上代理(調(diào)用父類構(gòu)造器);
2)便利構(gòu)造器總是必須橫向代理(調(diào)用當(dāng)前的其他構(gòu)造器)

類的構(gòu)造器鏈
便利構(gòu)造器鏈

swift中類的兩段式構(gòu)造(上)

兩段式構(gòu)造
第一階段

類的構(gòu)造需要兩個階段
第二階段:
1缕粹、沿著繼承樹往下稚茅,構(gòu)造器此時可以修改實例屬性、訪問self平斩,甚至可以調(diào)用實例方法亚享;
2、最后绘面,構(gòu)造器鏈中的便利構(gòu)造器都有機會定制實例和使用self欺税。


第二階段
指定構(gòu)造器的代碼順序

安全檢查

安全檢查1~2

這里是和c++是有區(qū)別的侈沪,也就是c++可以直接從上面的父類進(jìn)行往下進(jìn)行調(diào)用,但是swift中是先從下到上晚凿,然后再從上到下亭罪。


安全檢查3

安全檢查4

類的構(gòu)造器鏈

下面的類繼承和方法重寫

構(gòu)造器的重寫
1、子類構(gòu)造器重寫了父類的指定構(gòu)造器晃虫,必須添加override修飾符
2皆撩、子類中定義的構(gòu)造器只是與父類中遍歷構(gòu)造器的形參列表、外部形參名相同哲银,不算重寫扛吞。


fruit

apple

類與可能失敗的構(gòu)造器

失敗的兩個條件

實例

類的構(gòu)造與析構(gòu)(下)

類中的構(gòu)造器是不能夠調(diào)用,需要強制析構(gòu)的構(gòu)造器荆责,可以調(diào)用不需要強制解析的構(gòu)造器(也就是帶有問號的"?")



析構(gòu)器

析構(gòu)函數(shù)和c++中的析構(gòu)函數(shù)是一樣的(同樣是由系統(tǒng)自動調(diào)用)
構(gòu)造器與析構(gòu)

swift 中擴展添加屬性和方法【extension】


extension擴展

擴展的特性
擴展語法的定義


擴展添加屬性和方法

擴展計算屬性

wiliest didSet 相關(guān)的方法 get 和set 之間的計算屬性對和屬性值觀察器

添加方法

swift中的擴展添加下標(biāo)和構(gòu)造器

mutating 可變方法的關(guān)鍵字

books.retainAll() 這個方法是尾隨閉包滥比,

擴展添加構(gòu)造器

通過擴展添加的構(gòu)造器并沒有影響類型本來的構(gòu)造器,




swift中的協(xié)議(接口) 和oc中的協(xié)議是一樣的


協(xié)議

協(xié)議語法說明

Swift 中類和結(jié)構(gòu)體有很多共同點做院。共同處在于:定義屬性用于存儲值盲泛、定義方法用于提供功能、定義附屬腳本用于訪問值键耕、定義構(gòu)造器用于生成初始化值寺滚、通過擴展以增加默認(rèn)實現(xiàn)的功能、符合協(xié)議以對某類提供標(biāo)準(zhǔn)功能屈雄。與結(jié)構(gòu)體相比村视,類還有如下的附加功能:繼承允許一個類繼承另一個類的特征、類型轉(zhuǎn)換允許在運行時檢查和解釋一個類實例的類型酒奶、解構(gòu)器允許一個類實例釋放任何其所被分配的資源蚁孔、引用計數(shù)允許對一個類的多次引用。
結(jié)構(gòu)體應(yīng)該是不可以繼承的惋嚎,因為結(jié)構(gòu)體是可以進(jìn)行相關(guān)的內(nèi)容的值進(jìn)行了一次拷貝來進(jìn)行實現(xiàn)的杠氢。


實現(xiàn)協(xié)議的語法

協(xié)議指定的屬性要求

swift中是繼承的,協(xié)議上是多繼承的另伍,也就是彌補了類的但繼承的缺陷


protocol


結(jié)構(gòu)體和枚舉類型(值類型)都是可以使用static關(guān)鍵字進(jìn)行修飾的
(協(xié)議的定義和實現(xiàn)鼻百,協(xié)議中的注意的是:協(xié)議的定義類類型的屬性,在實現(xiàn)中是使用class還是使用static摆尝,這個要看具體的情況而定)

swift 通過try catch 處理抓獲異常
 do{
                let dict :[String:AnyObject] = try NSJSONSerialization.JSONObjectWithData(restData!, options: .MutableContainers) as! Dictionary
                print("dict is \(dict)")

 }catch{  }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末温艇,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子结榄,更是在濱河造成了極大的恐慌中贝,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件臼朗,死亡現(xiàn)場離奇詭異邻寿,居然都是意外死亡蝎土,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進(jìn)店門绣否,熙熙樓的掌柜王于貴愁眉苦臉地迎上來誊涯,“玉大人,你說我怎么就攤上這事蒜撮”┕梗” “怎么了?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵段磨,是天一觀的道長取逾。 經(jīng)常有香客問我,道長苹支,這世上最難降的妖魔是什么砾隅? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮债蜜,結(jié)果婚禮上晴埂,老公的妹妹穿的比我還像新娘。我一直安慰自己寻定,他們只是感情好儒洛,可當(dāng)我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著狼速,像睡著了一般琅锻。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上唐含,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天浅浮,我揣著相機與錄音沫浆,去河邊找鬼捷枯。 笑死,一個胖子當(dāng)著我的面吹牛专执,可吹牛的內(nèi)容都是我干的淮捆。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼本股,長吁一口氣:“原來是場噩夢啊……” “哼攀痊!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起拄显,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤苟径,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后躬审,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體棘街,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡蟆盐,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年匀哄,在試婚紗的時候發(fā)現(xiàn)自己被綠了吻氧。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片图柏。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡在塔,死狀恐怖夜惭,靈堂內(nèi)的尸體忽然破棺而出蒸痹,到底是詐尸還是另有隱情仅仆,我是刑警寧澤入篮,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布蛔糯,位于F島的核電站拯腮,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蚁飒。R本人自食惡果不足惜疾瓮,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望飒箭。 院中可真熱鬧狼电,春花似錦、人聲如沸弦蹂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凸椿。三九已至削祈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間脑漫,已是汗流浹背髓抑。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留优幸,地道東北人吨拍。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像网杆,于是被迫代替她去往敵國和親羹饰。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容