最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Swift中重寫和重載的使用與對(duì)比總結(jié)

 更新時(shí)間:2017年10月26日 10:53:51   作者:Mazy_ma  
這篇文章主要給大家介紹了關(guān)于Swift中重寫和重載的使用方法,以及重寫和重載的對(duì)比分析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。

前言

最近在學(xué)習(xí)swift,感覺(jué)Swift是一門大雜燴類型的語(yǔ)言,我會(huì)記錄一些我自認(rèn)為以前遇到較少或者需要重點(diǎn)記憶的語(yǔ)法特性,在此作為分享,本文詳細(xì)介紹了關(guān)于Swift重寫和重載的相關(guān)內(nèi)容,分享出來(lái)供大家參考學(xué)習(xí),下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧。

1、重載:

  • 函數(shù)名相同,參數(shù)名/參數(shù)類型/參數(shù)個(gè)數(shù)不同
  • 重載函數(shù)并不僅僅局限于構(gòu)造函數(shù)
  • 函數(shù)重載是面相對(duì)象程序設(shè)計(jì)語(yǔ)言的重要標(biāo)志
  • OC 不支持函數(shù)重載,OC 的替代方式是 withXXX…

2、重寫:

  • 也叫覆蓋,指在子類中定義一個(gè)與父類中方法同名同參數(shù)列表的方法。
  • 重寫是子類的方法覆蓋父類的方法,要求方法名和參數(shù)都相同
  • 因?yàn)樽宇悤?huì)繼承父類的方法,而重寫就是將從父類繼承過(guò)來(lái)的方法重新定義一次,重新填寫方法中的代碼。
  • 重寫必須繼承,重載不用

假設(shè)有一個(gè)Person類,用于 “name” 和 “age” 兩個(gè)屬性,我們分別用重寫和重載方法為其添加屬性

創(chuàng)建Person類

class Person: NSObject {

 var name: String // 姓名
 var age: Int  // 年齡

 // 構(gòu)造函數(shù)
 init(name: String,age: Int) {
  self.name = name
  self.age = age
  // 必須在 super.init() 之前 初始化對(duì)象
  super.init()
 }
}

通過(guò)重寫方法為其添加 “l(fā)esson” 屬性

class Student: Person {

 var lesson: String

 /// 重寫
 ///
 /// - Parameters:
 /// - name: 姓名
 /// - age: 年齡
 override init(name: String, age: Int) {

  lesson = "Python" // 必須放在super.init()之前

  super.init(name: name, age: age)

 }
}
 /// 重寫實(shí)例化的對(duì)象
 let s = Student(name: "Joyce", age: 18)
 print(s.lesson) // Python

通過(guò)重載方法為其添加 “l(fā)esson” 屬性

class Student: Person {

 var lesson: String

 /// 重載
 ///
 /// - Parameters:
 /// - name: 姓名
 /// - age: 年齡
 /// - lesson: 課程
 init(name: String, age: Int, lesson:String) {

  self.lesson = lesson

  super.init(name: name, age: age)
 }

}
 /// 重載實(shí)例化的對(duì)象
 let s1 = Student(name: "帥哥", age: 21, lesson: "HTML 5")
 print(s1.lesson) // HTML 5 

總結(jié):

通過(guò)重載,可以快速為方法添加新的屬性,屬性可以通過(guò)外部傳入

重寫,只能在方法內(nèi)部設(shè)置屬性,外部無(wú)法直觀看到類的參數(shù)列表

好了,以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Swift教程之控制流詳解

    Swift教程之控制流詳解

    這篇文章主要介紹了Swift教程之控制流詳解,本文詳細(xì)講解了Swift中的for循環(huán)、for-in循環(huán)、For-Condition-Increment條件循環(huán)、while循環(huán)、Do-while循環(huán)、if條件語(yǔ)句等控制流語(yǔ)句,需要的朋友可以參考下
    2015-01-01
  • Swift 3中使用FMDB遇到的問(wèn)題與解決方法

    Swift 3中使用FMDB遇到的問(wèn)題與解決方法

    相信大家都熟悉OC使用FMDB第三方庫(kù),進(jìn)行數(shù)據(jù)庫(kù)操作,增、刪、改、查,但最近在Swift 3中使用FMDB遇到了一些問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于在Swift 3中使用FMDB遇到的問(wèn)題與解決方法,需要的朋友可以參考下。
    2017-07-07
  • Swift運(yùn)算符使用方法淺析

    Swift運(yùn)算符使用方法淺析

    Swift 語(yǔ)言支持大部分標(biāo)準(zhǔn) C 語(yǔ)言的運(yùn)算符,并且改進(jìn)了許多特性來(lái)使我們的代碼更加規(guī)范,其中主要包含算數(shù)運(yùn)算符、區(qū)間運(yùn)算符、邏輯運(yùn)算符、關(guān)系運(yùn)算符、賦值運(yùn)算符、自增自減運(yùn)算符、溢出運(yùn)算符等
    2022-09-09
  • 深入解析Swift中switch語(yǔ)句對(duì)case的數(shù)據(jù)類型匹配的支持

    深入解析Swift中switch語(yǔ)句對(duì)case的數(shù)據(jù)類型匹配的支持

    這篇文章主要介紹了Swift中switch語(yǔ)句對(duì)case的數(shù)據(jù)類型匹配的支持,Swift中switch...case語(yǔ)句支持多種數(shù)據(jù)類型的匹配判斷,十分強(qiáng)大,需要的朋友可以參考下
    2016-04-04
  • swift使用SDPhotoBriwser瀏覽圖片教程

    swift使用SDPhotoBriwser瀏覽圖片教程

    這篇文章主要為大家介紹了swift如何使用SDPhotoBriwser瀏覽圖片的教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-10-10
  • Ubuntu 16.04上安裝 Swift 3.0及問(wèn)題解答

    Ubuntu 16.04上安裝 Swift 3.0及問(wèn)題解答

    本文給大家分享的是在Ubuntu系統(tǒng)中安裝 Swift 3.0的方法和步驟,以及安裝過(guò)程中有可能遇到的問(wèn)題的解答,這里推薦給小伙伴們,希望大家能夠喜歡
    2016-07-07
  • Swift 4中一些實(shí)用的數(shù)組技巧小結(jié)

    Swift 4中一些實(shí)用的數(shù)組技巧小結(jié)

    這篇文章主要給大家分享了關(guān)于Swift 4中一些實(shí)用的數(shù)組技巧,文中通過(guò)示例代碼介紹的介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用swift具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-03-03
  • Swift實(shí)現(xiàn)簡(jiǎn)單計(jì)算器

    Swift實(shí)現(xiàn)簡(jiǎn)單計(jì)算器

    這篇文章主要為大家詳細(xì)介紹了Swift實(shí)現(xiàn)簡(jiǎn)單計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Combine中錯(cuò)誤處理和Scheduler使用詳解

    Combine中錯(cuò)誤處理和Scheduler使用詳解

    這篇文章主要為大家介紹了Combine中錯(cuò)誤處理和Scheduler使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • swift5.3 UIColor使用十六進(jìn)制顏色的方法實(shí)例

    swift5.3 UIColor使用十六進(jìn)制顏色的方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于swift5.3 UIColor使用十六進(jìn)制顏色的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10

最新評(píng)論

县级市| 宜昌市| 黄冈市| 达孜县| 尚义县| 连州市| 德江县| 利辛县| 家居| 乐清市| 年辖:市辖区| 章丘市| 高州市| 读书| 元朗区| 玉林市| 兴城市| 来宾市| 清水县| 侯马市| 南汇区| 卫辉市| 鄢陵县| 罗甸县| 麦盖提县| 锡林郭勒盟| 明溪县| 大洼县| 收藏| 林州市| 同仁县| 贡觉县| 大安市| 乌苏市| 宜章县| 乌审旗| 涞水县| 宁远县| 措美县| 澄迈县| 洛宁县|