日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > asp.net >内容正文

asp.net

iOS设计模式-生成器

發(fā)布時(shí)間:2023/11/30 asp.net 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS设计模式-生成器 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

定義:將一個(gè)產(chǎn)品的內(nèi)部表象與產(chǎn)品的生成過(guò)程分割開(kāi)來(lái),從而可以使一個(gè)建造過(guò)程生成具有不同的內(nèi)部表象的產(chǎn)品對(duì)象。

類型:對(duì)象創(chuàng)建

類圖:

#import <Foundation/Foundation.h>
@interface Character : NSObject @property(nonatomic, assign)float protection; @property(nonatomic, assign)float power; @property(nonatomic, assign)float strength; @property(nonatomic, assign)float stamina; @property(nonatomic, assign)float intelligence; @property(nonatomic, assign)float agility; @property(nonatomic, assign)float aggressiveness; @end #import "Character.h"@implementation Character- (instancetype)init{if (self = [super init]) {_protection = 1.0;_power = 1.0;_strength = 1.0;_stamina = 1.0;_intelligence = 1.0;_agility = 1.0;_aggressiveness = 1.0;}return self; }@end #import <Foundation/Foundation.h> #import "Character.h"@interface CharacterBuilder : NSObject{Character * _character; } @property(nonatomic, readonly)Character *character;- (CharacterBuilder *)buildNewCharacter; - (CharacterBuilder *)builStrength:(float)value; @end #import "CharacterBuilder.h"@implementation CharacterBuilder- (CharacterBuilder *)buildNewCharacter{_character = [[Character alloc]init];return self; } - (CharacterBuilder *)builStrength:(float)value{_character.strength = value;return self; }@end #import "CharacterBuilder.h"@interface StandardCharacterBuilder : CharacterBuilder@end #import "StandardCharacterBuilder.h"@implementation StandardCharacterBuilder- (CharacterBuilder *)builStrength:(float)value{_character.protection = value;_character.power = value;return [super builStrength:value]; }@end #import <Foundation/Foundation.h> #import "StandardCharacterBuilder.h"@interface ChasingGame : NSObject- (Character *)createPlayer:(CharacterBuilder *)builder; - (Character *)createEnemy:(CharacterBuilder *)builder;@end #import "ChasingGame.h"@implementation ChasingGame- (Character *)createPlayer:(CharacterBuilder *)builder{[builder buildNewCharacter];[builder builStrength:50.0];return [builder character]; }- (Character *)createEnemy:(CharacterBuilder *)builder{[builder buildNewCharacter];[builder builStrength:80.0];return [builder character]; }@end

?

轉(zhuǎn)載于:https://www.cnblogs.com/muzijun/p/5749750.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的iOS设计模式-生成器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。