swift學習筆記

1.swift類的構造器

? swift構造器有三種:指定構造器和, 便利構造器, 默認構造器. 其中用'convenience'修飾的構造器為便利構造器, 繼承自父類的構造器及swift自動提供的構造器為默認構造器, 其他為指定構造器. 指定構造器一般只有一個, 也可以有多個.
? 所有便利構造器內部都必須調用本類的便利構造器或指定構造器, 但最終要調用本類指定構造器
? 當子類有異于父類的構造器時(一般是指定構造器, 因為子類的便利構造器最終都要調用子類的指定構造器), 子類中所有的默認構造器不可用.
??為什么swift要在以上情況下強制默認構造器不可用呢?
聲明一個屬性時不設置默認值, 就必須在構造器中設置

E04CDF10-16CE-4AEB-9133-8689A3D5B924.png

即初始化前所有屬性都必須要有一個值(特殊情況除外, 如lazy, 可選類型等)
如果子類實現了自己的指定構造器, 很可能是為了初始化子類獨有的屬性, 那么父類的構造器就不適合子類了, 所以就強制不可用.
但是有些構造器是有獨特的作用的, 比如init?(coder aDecoder: NSCoder)方法, 于是父類用required修飾這個構造器, 需要程序猿必須要實現.

90F841D7-0520-4D34-A738-1D5CBB036030.png

至于init?(coder aDecoder: NSCoder)是干什么用的, 呵呵, 一直在用loadNibNamed方法的我也有點蒙圈......

參考資料:http://stackoverflow.com/questions/25126295/class-does-not-implement-its-superclasss-required-members

2.swfit只讀屬性

?setter getter方法重寫如圖, 如果只有get沒有set就是只讀屬性, 但是有set的話就必須要有get

2D2148F3-0B0A-4378-A3EC-092B36667F85.png

3.你不可以為繼承來的常量存儲型屬性或繼承來的只讀計算型屬性添加屬性觀察器。這些屬性的值是不可以被設置的,所以愉镰,為它們提供willSetdidSet實現是不恰當。此外還要注意髓窜,你不可以同時提供重寫的 setter 和重寫的屬性觀察器。如果你想觀察屬性值的變化欺殿,并且你已經為那個屬性提供了定制的 setter寄纵,那么你在 setter 中就可以觀察到任何值變化了。
D69CE970-5C54-4242-ADC8-9EF696050F16.png

3.swift 訪問權限

1脖苏、private
private訪問級別所修飾的屬性或者方法只能在當前類里訪問程拭。
2、fileprivate
fileprivate訪問級別所修飾的屬性或者方法在當前的Swift源文件里可以訪問帆阳。
3哺壶、internal(默認訪問級別屋吨,internal修飾符可寫可不寫)
internal訪問級別所修飾的屬性或方法在源代碼所在的整個模塊都可以訪問蜒谤。
如果是框架或者庫代碼,則在整個框架內部都可以訪問至扰,框架由外部代碼所引用時鳍徽,則不可以訪問。
如果是App代碼敢课,也是在整個App代碼阶祭,也是在整個App內部可以訪問。
4直秆、public
可以被任何人訪問濒募。但其他module中不可以被override和繼承,而在module內可以被override和繼承圾结。
5瑰剃,open
可以被任何人使用,包括override和繼承筝野。
訪問順序:
現在的訪問權限則依次為:open晌姚,public粤剧,internal,fileprivate挥唠,private抵恋。

轉自: http://www.reibang.com/p/ee4a45e96570

需要說明的是, 對類/結構體使用低訪問權限, 類/結構體的屬性依舊可以使用高權限修飾. 當然, 一般類如果不能訪問, 其屬性也不能訪問.

  • 任何屬性或類的權限, 不得高于其類型或父類的權限
  • 任何方法, 其權限不高于其參數與返回值類型的訪問權限

有錯望指正, 謝謝.

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市宝磨,隨后出現的幾起案子弧关,更是在濱河造成了極大的恐慌,老刑警劉巖唤锉,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件梯醒,死亡現場離奇詭異,居然都是意外死亡腌紧,警方通過查閱死者的電腦和手機茸习,發(fā)現死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來壁肋,“玉大人号胚,你說我怎么就攤上這事〗牛” “怎么了猫胁?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長跛锌。 經常有香客問我弃秆,道長,這世上最難降的妖魔是什么髓帽? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任菠赚,我火速辦了婚禮,結果婚禮上郑藏,老公的妹妹穿的比我還像新娘衡查。我一直安慰自己,他們只是感情好必盖,可當我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布拌牲。 她就那樣靜靜地躺著,像睡著了一般歌粥。 火紅的嫁衣襯著肌膚如雪塌忽。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天失驶,我揣著相機與錄音土居,去河邊找鬼。 笑死,一個胖子當著我的面吹牛装盯,可吹牛的內容都是我干的坷虑。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼埂奈,長吁一口氣:“原來是場噩夢啊……” “哼迄损!你這毒婦竟也來了?” 一聲冷哼從身側響起账磺,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤芹敌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后垮抗,有當地人在樹林里發(fā)現了一具尸體氏捞,經...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年冒版,在試婚紗的時候發(fā)現自己被綠了液茎。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片打月。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡揭朝,死狀恐怖,靈堂內的尸體忽然破棺而出路召,到底是詐尸還是另有隱情续室,我是刑警寧澤栋烤,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站挺狰,受9級特大地震影響明郭,放射性物質發(fā)生泄漏。R本人自食惡果不足惜丰泊,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一薯定、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧趁耗,春花似錦沉唠、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽径簿。三九已至罢屈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間篇亭,已是汗流浹背缠捌。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人曼月。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓谊却,卻偏偏與公主長得像,于是被迫代替她去往敵國和親哑芹。 傳聞我的和親對象是個殘疾皇子炎辨,可洞房花燭夜當晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內容