一門面向對象的語言
面向對象的語言特性:封裝、繼承、多態
它既具有靜態語言的特性(如C++)
又有動態語言的效率(動態綁定、動態加載等)
具有相當多的動態特性,表現為三方面:
動態類型(Dynamic typing)
動態綁定(Dynamic binding)
動態加載(Dynamic loading)
動態——必須到運行時(run time)才會做的一些事情。
動態類型:
即運行時再決定對象的類型,這種動態特性在日常的應用中非常常見,簡單來說就是id類型。
事實上,由于靜態類型的固定性和可預知性,從而使用的更加廣泛。
靜態類型是強類型,而動態類型屬于弱類型,運行時決定接受者。
動態綁定:
基于動態類型,在某個實例對象被確定后,其類型便被確定了,該對象對應的屬性和響應消息也被完全確定。
動態加載:
根據需求加載所需要的資源,最基本就是不同機型的適配
例如,在Retina設備上加載@2x的圖片,而在老一些的普通蘋設備上加載原圖,讓程序在運行時添加代碼模塊以及其他資源,用戶可根據需要加載一些可執行代碼和資源,而不是在啟動時就加載所有組件,可執行代碼可以含有和程序運行時整合的新類。
修改時間:
2016年11月17日09:34:24