鏈?zhǔn)剿季S
鏈?zhǔn)骄幊蹋櫭剂x就是一條鏈子遗锣,一直.下去抚垃。
例如person.name(@"張三").age(25).height(175);
這里我們思考一下
1、能.出來的應(yīng)該是屬性
2员舵、屬性后面有個小括號,里面?zhèn)鲄⑴号希瑧?yīng)該是block
3马僻、能繼續(xù). 那么前一個屬性的返回值應(yīng)該是該對象本身
帶著這3點思維,我們試著玩一下鏈?zhǔn)骄幊?/p>
定義一個Person類注服,寫幾個符合鏈?zhǔn)骄幊痰膶傩?/h6>
@property (nonatomic, copy, readonly) Person *(^name)(NSString *);
-(Person *(^)(CGFloat))height;
-(Person *(^)(NSUInteger))age;
@property (nonatomic, copy, readonly) Person *(^name)(NSString *);
-(Person *(^)(CGFloat))height;
-(Person *(^)(NSUInteger))age;
解釋一下上面的代碼:看著是一個屬性兩個方法韭邓,其實你在仔細看下措近,下面的那兩個方法是不是屬性的Getter方法呢,所以怎么寫女淑,看自己的喜歡了瞭郑。
使用
Person *person = [[Person alloc]init];
person.name(@"張三").age(25).height(175);
以上就是ios的一個鏈?zhǔn)骄幊痰乃季S。
demo下載地址:https://github.com/xiaozhuxiong121/ChainProgramming