Swift 學習日記 Day1

關于多態(tài)和OOP

多態(tài) (Polymorphism):

指計算機程序執(zhí)行時,相同的訊息可能會送給多個不同的類別之物件,而系統(tǒng)可依據(jù)物件所屬類別,引發(fā)對應類別的方法,而有不同的行為。簡單來說,所謂多型意指相同的訊息給予不同的物件會引發(fā)不同的動作稱之。

Polymorphism allows the expression of some sort of contract, with potentially many types implementing that contract (whether through class inheritance or not) in different ways, each according to their own purpose. Codeusingthat contract should not have to care about which implementation is involved, only that the contract will be obeyed.

例子:
比如有動物(Animal)之[類別](Class),而且由動物[繼承]出類別老鷹(Hawk)和類別狗(Dog),并對同一源自類別動物(父類別)之一訊息有不同的響應,如類別動物有「動()」之動作,而類別老鷹會「飛()」,類別狗則會「跑()」,則稱之為多型。

實踐:

import UIKit

class Animal {
    func move() {
    }
}

class Dog: Animal {
    override func move() {
        print("Run")
    }
}

class Hawk: Animal {
    override func move() {
        print("Fly")
    }
}

let dog = Dog()
let hawk = Hawk()

dog.move()
hawk.move()
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,551評論 19 139
  • 很實用的編程英語詞庫,共收錄一千五百余條詞匯。 第一部分: application 應用程式 應用、應用程序app...
    春天的蜜蜂閱讀 1,607評論 0 22
  • 導語: 如果你已經(jīng)加入了iOS攻城獅隊伍,那么我們由衷地祝賀您正式成為一名終身學習的程序猿;有人覺得這句話...
    超人猿閱讀 2,548評論 3 19
  • 一、圖片數(shù)量 1、該多不多 有的時候,你配圖數(shù)量不夠,只有2張,這是不可以的,最少3張,一個也不能少 2、該少不少...
    朔馬漁陽1閱讀 691評論 0 0
  • 歲華多少任消磨,少不知愁老卻多。 昔日苦辛原值得,如今成就本如何。 無心豈可景中覓,適意但從心里歌。 況乃千秋付一...
    雪窗_武立之閱讀 1,786評論 11 11

友情鏈接更多精彩內(nèi)容