iOS runtime執行時具體解釋

來源:互聯網
上載者:User

標籤:沒有   article   post   center   過程   oci   luci   margin   ott   

什麼是runtime?

runtime直譯就是執行時間,run(跑,執行) time(時間),網上大家都叫它執行時,它是一套比較底層的純C語言API,屬於一個C語言庫,包括了非常多底層的C語言API,它是OC的幕後工作者,我們平時寫的OC代碼,在執行過程時,都會轉為runtime的C語言代碼

runtime有什麼用?

假設你之前不知道runtime,可能認為它沒什麼用,事實上他的作用很強大.以下我們就以代碼的形式為大家揭開runtime的神奇面紗

作用1  擷取一個類所有成員變數名(假設你的成員私人,也能夠擷取到)

我們建立一個Person類,.h代碼例如以下

這些成員變數都是公有的,我們直接點開標頭檔就能夠看到,假設是系統的類呢,你是不是就不知道類裡面有哪些成員了,利用runtime能夠輕鬆解決問題,如今我們來測試一下,記得要加 #import 

列印結果

你能夠試一下,把全部的成員放到.m檔案中面,它列印的結果是一樣的.

作用2  同理,我們能夠擷取到一個類的所有屬性名稱

列印結果:

作用3 擷取一個類的所有方法

列印結果:

我們能夠看到全部的方法

作用4 擷取一個類遵循的全部協議

先將遵循的協議給凝視掉

測試代碼

結果啥都沒有列印出來

我們把遵循的代碼凝視給開啟

再運行測試代碼,列印結果

是不是非常棒,你可能認為貌似用處不太大,那接下來我們來看看怎樣利用runtime歸檔和解檔.

作用5 歸檔/解檔測試例如以下:


iOS runtime執行時具體解釋

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.