一、多態(tài)的概念 一說起面向?qū)ο笳Z言的三大特性,你可能會(huì)脫口而出:封裝、繼承、多態(tài)。那什么是多態(tài)呢,你或許可以背出關(guān)于多態(tài)的定義,可以舉出關(guān)于貓、狗吃東西的例子,但你真的理解多...
一、多態(tài)的概念 一說起面向?qū)ο笳Z言的三大特性,你可能會(huì)脫口而出:封裝、繼承、多態(tài)。那什么是多態(tài)呢,你或許可以背出關(guān)于多態(tài)的定義,可以舉出關(guān)于貓、狗吃東西的例子,但你真的理解多...
Swift協(xié)議 協(xié)議規(guī)定了用來實(shí)現(xiàn)某一特定功能所必需的方法和屬性 類、結(jié)構(gòu)體、枚舉類型都可以遵循協(xié)議,并提供具體實(shí)現(xiàn)來完成協(xié)議定義的方法和功能。能夠滿足協(xié)議要求的類型被稱為遵...
從一個(gè)具體需求說起 應(yīng)用中有多個(gè)頁面內(nèi)的UICollectionViewCell需要實(shí)現(xiàn)一個(gè)相同的小動(dòng)畫:被選中時(shí),先縮小到原來的0.8倍,再回彈到0.9倍。動(dòng)畫本身實(shí)現(xiàn)起來...
dart版本:(stable) 2.2.2(空安全)connectivity:^3.0.6shared_preferences:^2.0.6注:我是抄后改成適合自己的,不過網(wǎng)...
一、前言 隨著項(xiàng)目功能的不斷增加,越來越多的開發(fā)人員加入,業(yè)務(wù)主線也隨之越來越多,造成耦合越來越嚴(yán)重,編譯越來越慢,測(cè)試不獨(dú)立等一系列問題。為了解決此類情況,我們可以考慮到使...
Block的底層基本結(jié)構(gòu) 通過clang命令查看編譯器是如何實(shí)現(xiàn)Block的,在終端輸入clang -rewrite-objc main.m,然后會(huì)在當(dāng)前目錄生成main.c...
上一篇文章介紹了CJLabel的實(shí)現(xiàn),在V2.0.0版本之前,CJLabel的圖文顯示是基于NSAttributedString來實(shí)現(xiàn)的,但有若干不足: 圖片點(diǎn)擊響應(yīng)只支持e...
CJLabel經(jīng)過若干版本迭代,各個(gè)功能已經(jīng)日趨完善,并且不斷精細(xì),特別是在V4.0.0版本迎來了重頭戲:新增enableCopy屬性,支持選擇、全選、復(fù)制功能,類似UITe...
介紹copy和mutableCopy 介紹深拷貝與淺拷貝 block為什么要用copy copy相對(duì)于直接賦值的好處 總結(jié) 預(yù)備知識(shí) : 堆 : 一般由程序員分配釋放, 若程...