[self class]、[self superclass]蓝晒、[super class]分別表示什么意思?
- [self class]表示當(dāng)前類声功、self是指向自己的指針,可以打印出來
- [self superclass] 表示當(dāng)前類的父類
- [super class]:首先super不是指針仔引,只是關(guān)鍵字,不能打印出來褐奥;其次這個[super class]表示的是當(dāng)前對象咖耘,而且super可以用來調(diào)用父類方法,比如[super init]撬码,表示當(dāng)前類對象調(diào)用父類初始化方法儿倒。
因?yàn)樽宇惱^承自父類,需要獲得父類的實(shí)例和方法等耍群,所以初始化子類之前要先保證父類已經(jīng)初始化完畢义桂,防止出錯。當(dāng)調(diào)用self = [super init]方法時蹈垢,如果父類初始化不成功慷吊,那么會返回nil,所以可以根據(jù)self是否為nil判斷父類是否初始化成功曹抬,從而進(jìn)行合理地處理溉瓶,以便起到容錯效果。