UIButton 父類是誰?
UIControl
assign weak 修飾的區(qū)別?為什么用weak修飾對象,而不用assign
assign修飾基本數(shù)據(jù)蒂教,weak修飾對象
防止野指針出現(xiàn)
不使用KVO監(jiān)聽方法,如何手動觸發(fā)對象的屬性的變化
- (void)willChangeValueForKey:(NSString *)key
設(shè)置模型值 - (void)didChangeValueForKey:(NSString *)key
__block和__weak的區(qū)別
1.__block不管是ARC還是MRC模式下都可以使用脆荷,可以修飾對象悴品,還可以修飾基本數(shù)據(jù)類型。
2.__weak只能在ARC模式下使用,也只能修飾對象(NSString)苔严,不能修飾基本數(shù)據(jù)類型(int)。
3.__block對象可以在block中被重新賦值孤澎,__weak不可以届氢。
4.__block對象在ARC下可能會導(dǎo)致循環(huán)引用,非ARC下會避免循環(huán)引用覆旭,__weak只在ARC下使用退子,可以避免循環(huán)引用。
為什么block中不能修改普通變量的值型将?
int val = __cself->val;
因?yàn)閕nt val變量定義在棧上寂祥,,在block被調(diào)用時實(shí)際上已經(jīng)被銷毀七兜,但是我們還可以正常訪問這個變量丸凭,而這個變量的值實(shí)際上是__cself->val,__cself->val是截獲的變量值的副本腕铸,要想修改在block之外定義的變量是不可能的惜犀。
__block的作用就是讓變量的值在block中可以修改么?
使用__block變量修飾后狠裹,
__Block_byref_val_0 *val;
val是一個指針變量虽界,因此可以訪問修改block外的val變量。但是出現(xiàn)一個問題就是在arc模式下涛菠,__block修飾對象會出現(xiàn)循環(huán)引用的問題莉御,因?yàn)閷ο髸粡?qiáng)引用一次。非arc模式下則不會出現(xiàn)循環(huán)引用的問題俗冻。
談?wù)勀銓untime的理解礁叔,有哪些應(yīng)用?
屬性weak 實(shí)現(xiàn)原理
Runtime維護(hù)了一個weak表言疗,用于存儲指向某個對象的所有weak指針晴圾。weak表其實(shí)是一個hash(哈希)表,Key是所指對象的地址噪奄,Value是weak指針的地址(這個地址的值是所指對象的地址)數(shù)組死姚。
網(wǎng)絡(luò)、加密勤篮、鎖都毒,你可以自由發(fā)揮
招聘一個靠譜的iOS上
http://www.cocoachina.com/articles/12872
招聘一個靠譜的iOS下
http://www.reibang.com/p/90dccd24f505
大小長度粗細(xì)不均的香,燒完都是1個小時碰缔,請問怎樣才能確定是15分鐘账劲?
1.拿兩根香,第一根兩頭同時點(diǎn)上,另一根指點(diǎn)一頭
2.當(dāng)?shù)谝桓鶡甑臅r候瀑焦,正好過了半小時腌且,從此刻開始計(jì)時,把另一個根香的另一頭點(diǎn)上榛瓮,燒完就是15分鐘