黑马程序员技术交流社区

标题: class的问题 [打印本页]

作者: 程序猿-2014    时间: 2014-4-11 16:38
标题: class的问题
本帖最后由 程序猿-2014 于 2014-4-12 11:12 编辑

#import <Foundation/Foundation.h>
@interface Person : NSObject
@property int age;
@end

@implementation Person
+ (NSString *)description
{
    return @"A";
}
- (NSString *)description
{
    return @"B";
}
@end

int main()
{
    Person *p = [Person new];
    Person *p2 = [[Person class] new];
    NSLog(@"%@", p);
    NSLog(@"%@", p2);
    NSLog(@"%@", [Person class]);
    NSLog(@"%@", [p class]);
    return 0;
}
这个程序中       Person *p2 = [[Person class] new];这句什么意思    做了什么    class的问题有点犯晕
作者: 沙洲冷    时间: 2014-4-11 16:43
[Person class]相当于Person;[Person class]返回Person类本身。
作者: 微尘•逐梦    时间: 2014-4-11 17:02
[Person class]会返回类型Person,Person *p2 = [[Person class] new];这句的意思就是Person *p2 = [Person  new];希望我的回答对你有帮助。
作者: 于清扬    时间: 2014-4-11 19:54
Person *p2 = [[Person class] new];这句什么意思    做了什么    class的问题有点犯晕

这句是创建了一个Person类型的对象
class方法会返回方法调用者的类对象




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2