- (void)addPartTwo;
- (Product *)getResult;
@end
ConcreteBuilder.m(部分代码):
复制代码
- (id)init
{
self = [superinit];
if (self)
{
product = [[Productalloc] init];
}
returnself;
}
- (void)addPartOne
{
[productaddPart:@"part one"];
}
- (void)addPartTwo
{
[productaddPart:@"part two"];
}
- (Product *)getResult
{
returnproduct;
}
Director.m(部分代码):
- (void)construct:(id<Builder>)builder
{
[builder addPartOne];
[builder addPartTwo];
}
客户端调用代码:
复制代码
Director *director = [[Directoralloc] init];
id<Builder> builder = [[ConcreteBuilderalloc] init];










