Class objects(类对象)
视频锁定
{$ currentTime | date:'mm:ss' $}
{$ timeLeft | date:'mm:ss' $}
在Objective-C中,各种类本身被视作很多不同的对象,这种特殊的对象被称作类对象。然而,类对象不拥有它们自己定义的实例变量(属性),而类对象也不能被用户去创建或者销毁。它们可以响应被称作类方法的方法,请看如下代码:
id result = [SomeClassName doSomething];
类对象可以响应自己定义的类方法,就如上面的SomeClassName
类可以响应doSomething
方法。也可以响应自己父类的类方法,但不允许重写继承过来的父类的类方法。你可以在运行时获取到一个与对象同类型的类的类对象,类对象是一个”Class
”类的对象。请看如下代码:
// 下面三个stringClass1-3的值都一样
id stringClass1 = [stringObject class];
Class stringClass2 = [stringObject class];
id stringClass3 = [NSString class];
通过重写从NSObject中继承来的version
方法,你可以给类定义一个版本号version number。
int versionNumber = [NSString version];
这样,开发者就可以正确选择合适的版本的类了。
在线练习
{$ activeFileHint $}