iOS

类簇是在Objective-C中Foundation Framework中广泛使用的一种设计模式

1.发现类簇(Class Cluster)的踪迹###

    //*> 执行下面代码
    id obj1  = [NSMutableArray alloc];
    id obj2  = [NSArray alloc];
    id obj3  = @[@"1",@2];
    id obj4  = [[NSArray alloc] init];
    id obj5  = [[NSArray alloc] initWithObjects:@"obj1",@"obj2", nil];
    id obj6  = [[NSArray alloc] initWithArray:obj5];
    id obj7  = @[@"1",@"2"].mutableCopy;
    id obj8  = [[NSMutableArray alloc] init];
    id obj9  = [[NSMutableArray alloc] initWithArray:obj5];
    id obj10 = [[NSMutableArray alloc] initWithObjects:@"1", nil];
    
    NSLog(@"obj1%@",[obj1 class]);
    NSLog(@"obj2%@",[obj2 class]);
    NSLog(@"obj3%@",[obj3 class]);
    NSLog(@"obj4%@",[obj4 class]);
    NSLog(@"obj5%@",[obj5 class]);
    NSLog(@"obj6%@",[obj6 class]);
    NSLog(@"obj7%@",[obj7 class]);
    NSLog(@"obj8%@",[obj8 class]);
    NSLog(@"obj9%@",[obj9 class]);
    NSLog(@"obj10%@",[obj10 class]);

    //*> 打印结果
    /*
    2016-03-24 11:35:17.516 测试1[1388:558109] obj1__NSPlaceholderArray
    2016-03-24 11:35:17.516 测试1[1388:558109] obj2__NSPlaceholderArray
    2016-03-24 11:35:17.516 测试1[1388:558109] obj3__NSArrayI
    2016-03-24 11:35:17.516 测试1[1388:558109] obj4__NSArray0
    2016-03-24 11:35:17.517 测试1[1388:558109] obj5__NSArrayI
    2016-03-24 11:35:17.517 测试1[1388:558109] obj6__NSArrayI
    2016-03-24 11:35:17.517 测试1[1388:558109] obj7__NSArrayM
    2016-03-24 11:35:17.517 测试1[1388:558109] obj8__NSArrayM
    2016-03-24 11:35:17.517 测试1[1388:558109] obj9__NSArrayM
    2016-03-24 11:35:17.517 测试1[1388:558109] obj10__NSArrayM
    
    说明:__NSPlaceholderArray、NSArrayI、NSArray0和NSArrayM分别都是NSArray,NSMutableArray的私有类。
    */
原文地址:https://www.cnblogs.com/R0SS/p/5314876.html