//
// main.m
// 第一个类方法
//
// Created by zyz on 15/12/7.
// Copyright (c) 2015年 zyz. All rights reserved.
//
#import <Foundation/Foundation.h>
//用typedef和enum配合来给颜色定义一个简单的名字
typedef enum
{
KColorBlank,
KColorWhite,
KColorTuHaoJin
}icolor;
//定义一个IPhone类
@interface Iphone :NSObject
{ @public
int _model;
icolor _color;
int _size;
NSString *_name;
}
//对象方法可以直接调用成员变量
//类方法不可以调用成员变量
//1.类方法不需要用到成员变量的时候可以定义
//2.类方法可以直接用类调用
//3.对象方法必须必须对象调用
//4.类方法比对象方法效率高
//类方法不需要用到成员变量的时候可以定义
+(NSString *)returnWithColor:(icolor)number;
-(void)printWithInformation;
@end
@implementation Iphone
+(NSString *)returnWithColor:(icolor)number
{ NSString * name;
switch (number) {
case 0:
name = @"黑色";
break;
case 1:
name = @"白色";
break;
case 2:
name = @"土豪金";
break;
default:
name = @"华强北";
break;
}
return name;
}
-(void)printWithInformation
{
NSString *colora = [Iphone returnWithColor:_color];
NSLog(@"型号%i 颜色%@ 尺寸%i 名字%@",_model,colora,_size,_name);
}
@end
int main(int argc, const char * argv[]) {
Iphone *p = [Iphone new];
p->_name = @"iPhone4s";
p->_color = KColorBlank;
p->_size = 15;
p->_model = 20;
[p printWithInformation];
return 0;
}
网友评论