swift 筆記

swift 筆記
fileprivate 和 private
fileprivate 私有际歼,文件內(nèi)和擴(kuò)展可以使用該變量
private 絕對(duì)私有颤枪,只能在類或者結(jié)構(gòu)體內(nèi)使用

static 在func 關(guān)鍵字之前
指定類方法,可被子類重寫
class 在func 關(guān)鍵字之前
指定類方法,不能被子類重寫,包含final特性
final 可以把屬性,下標(biāo)嗡害,等標(biāo)記wei final 即可防止子類重寫
http://www.reibang.com/p/a9c9e7313438

關(guān)于as http://www.reibang.com/p/edbdc60218d1

as  keyword:Guaranteed conversion、 Upcasting
    理解:字面理解就是有保證的轉(zhuǎn)換畦攘,從派生類轉(zhuǎn)換為基類的向上轉(zhuǎn)型
        // 將1轉(zhuǎn)成float
        let num = 1 as CGFloat
        |------------------------
        // dog轉(zhuǎn)換到父類animal
        class Animal {}
        class Dog: Animal {}
        let d = Dog()
        d as Animal

as!  keyword:Forced conversion霸妹、 Downcasting
        理解:字面理解就是有強(qiáng)項(xiàng)轉(zhuǎn)換,即向下轉(zhuǎn)型知押,子類(派生類)向父類轉(zhuǎn)換叹螟,官方解釋說這是一個(gè)不被保證的轉(zhuǎn)換,可能會(huì)因?yàn)閺?qiáng)轉(zhuǎn)的失敗而會(huì)導(dǎo)致崩潰台盯。同時(shí) 首妖!是一個(gè)陷阱的標(biāo)志,就像??一樣爷恳,用起來存在一定危險(xiǎn)性

        文/CoderTgg(簡(jiǎn)書作者)
        原文鏈接:http://www.reibang.com/p/edbdc60218d1
        著作權(quán)歸作者所有有缆,轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),并標(biāo)注“簡(jiǎn)書作者”。
        // Dog到Animal的轉(zhuǎn)化
        class Animal {}
        class Dog: Animal {}
        let a: Animal = Dog()
        a as Dog        // as不能將a轉(zhuǎn)成Dog棚壁,即不能向下轉(zhuǎn)換
        a as! Dog    // as杯矩!能強(qiáng)行將a轉(zhuǎn)成Dog -> Bingo

as?   keyword: Optional、 Nil
      理解:Swfit代碼寫一段時(shí)間后會(huì)發(fā)現(xiàn)到處都是 袖外? 史隆,這預(yù)示著如果轉(zhuǎn)換不成功的時(shí)候便會(huì)返回一個(gè) nil 對(duì)象。成功的話返回可選類型值(optional)曼验。
      // Dog泌射、Cat和Animal的轉(zhuǎn)換關(guān)系
        class Animal {}
        class Cat: Animal {}
        class Dog: Animal {
        var name = "Spot"
        }
        let dog: Dog? = nil
        dog?.name        // 選擇調(diào)用,返回空值nil
        dog!.name        // 強(qiáng)行調(diào)用鬓照,報(bào)錯(cuò)
        let animal: Animal = Cat()
        animal as? Dog    // 貓轉(zhuǎn)狗失敗熔酷,返回nil
        animal as! Dog    // 貓強(qiáng)行轉(zhuǎn)狗,失敗報(bào)錯(cuò)

在swift中有兩種初始化方法豺裆,
1.指定初始化方法
- 指定初始化方法其實(shí)指的就是 init 方法
- 默認(rèn)的init方法就是指定初始化方法
init方法不能嵌套使用
2.便利初始化方法
便利構(gòu)造方法即在 init 方法前加上 convenience 關(guān)鍵字
從代碼中我們可以得出結(jié)論:
1.便利構(gòu)造方法必須調(diào)用指定構(gòu)造方法拒秘,完成初始化,不能單獨(dú)使用
2.便利構(gòu)造方法可以嵌套使用臭猜,但最終都需要調(diào)用指定構(gòu)造方法
3.指定構(gòu)造方法不能嵌套使用
便利構(gòu)造方法相比指定構(gòu)造方法更加靈活躺酒,為我們開發(fā)提供方便,因?yàn)樗菀诐M足實(shí)際需要蔑歌,我們?cè)趯?shí)際開發(fā)中羹应,應(yīng)根據(jù)需要來設(shè)計(jì)便利構(gòu)造方法

required 修飾符 http://blog.csdn.net/jq2530469200/article/details/51672889
required修飾符的使用規(guī)則
1. required修飾符只能用于修飾類初始化方法。
2. 當(dāng)子類含有異于父類的初始化方法時(shí)(初始化方法參數(shù)類型和數(shù)量異于父類)次屠,子類必須要實(shí)現(xiàn)父類的required初始化方法量愧,并且也要使用required修飾符而不是override。
3. 當(dāng)子類沒有初始化方法時(shí)帅矗,可以不用實(shí)現(xiàn)父類的required初始化方法。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末煞烫,一起剝皮案震驚了整個(gè)濱河市浑此,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌滞详,老刑警劉巖凛俱,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異料饥,居然都是意外死亡蒲犬,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門岸啡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來原叮,“玉大人,你說我怎么就攤上這事》芰ィ” “怎么了擂送?”我有些...
    開封第一講書人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)唯欣。 經(jīng)常有香客問我嘹吨,道長(zhǎng),這世上最難降的妖魔是什么境氢? 我笑而不...
    開封第一講書人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任蟀拷,我火速辦了婚禮,結(jié)果婚禮上萍聊,老公的妹妹穿的比我還像新娘问芬。我一直安慰自己,他們只是感情好脐区,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開白布愈诚。 她就那樣靜靜地躺著,像睡著了一般牛隅。 火紅的嫁衣襯著肌膚如雪炕柔。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評(píng)論 1 310
  • 那天媒佣,我揣著相機(jī)與錄音匕累,去河邊找鬼。 笑死默伍,一個(gè)胖子當(dāng)著我的面吹牛欢嘿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播也糊,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼炼蹦,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了狸剃?” 一聲冷哼從身側(cè)響起掐隐,我...
    開封第一講書人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎钞馁,沒想到半個(gè)月后虑省,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡僧凰,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年探颈,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片训措。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡伪节,死狀恐怖光羞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情架馋,我是刑警寧澤狞山,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站叉寂,受9級(jí)特大地震影響萍启,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜屏鳍,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一勘纯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧钓瞭,春花似錦驳遵、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至鸭丛,卻和暖如春竞穷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背鳞溉。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工瘾带, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人熟菲。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓看政,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親抄罕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子允蚣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

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

  • 渲染: 1 當(dāng)前屏幕渲染:在GPU的當(dāng)前屏幕緩沖區(qū)中進(jìn)行的渲染 2 離屏渲染:在GPU當(dāng)前屏幕緩沖區(qū)外另建緩沖區(qū)渲...
    adrian920閱讀 385評(píng)論 0 0
  • 123.繼承 一個(gè)類可以從另外一個(gè)類繼承方法,屬性和其他特征。當(dāng)一個(gè)類繼承另外一個(gè)類時(shí), 繼承類叫子類, 被繼承的...
    無灃閱讀 1,398評(píng)論 2 4
  • 下標(biāo)腳本 下標(biāo)腳本 可以定義在類呆贿、結(jié)構(gòu)體和枚舉這些目標(biāo)中嚷兔,可以認(rèn)為是訪問集合(collection),列表(li...
    cht005288閱讀 449評(píng)論 0 0
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young閱讀 3,819評(píng)論 1 10
  • 1榨崩、范型范型所解決的問題 函數(shù)、方法章母、類型:類母蛛,結(jié)構(gòu)體,枚舉乳怎,元組類型彩郊,協(xié)議參數(shù)前弯,返回值,成員函數(shù)參數(shù)秫逝,成員屬性類...
    我是小胡胡123閱讀 836評(píng)論 0 1