若调用一个方法,在该方法中不需要使用成员变量,那么我们可以该方法声明为类方法。
练习题:
有一个手机的类iPhone,该类中有一个枚举变量_color,kColorBlack黑,kColorWhite黑,kColorTHJ土豪金
(1)请定义一个类方法,实现返真实手机颜色,而非枚举值
- typedef enum {kColorWhite,kColorBlack,kColorTHJ} Color;
- @interface IPhone : NSObject
- {
- @public
- Color _color;
- }
- +(NSString *)getPhoneColor:(Color) color;
- @end
复制代码 (2)实现类方法
- @implementation IPhone
- +(NSString *)getPhoneColor:(Color) color{
- NSString *colorName;
- //根据color的值作判断
- switch (color) {
- case kColorWhite:
- colorName = @"白色";
- break;
- case kColorBlack:
- colorName = @"黑色";
- break;
- case kColorTHJ:
- colorName = @"土豪金";
- break;
- default:
- break;
- }
- return colorName;
- }
- @end
复制代码 (3)主函数调用
- int main(int argc, const char * argv[]) {
- @autoreleasepool {
- NSString *str = [IPhone getPhoneColor:kColorTHJ];
- NSLog(@"%@",str);
- }
- return 0;
- }
复制代码
|
|