//
// 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;
}
类方法
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 类不实例化是可以调用方法的,这种方法叫做静态方法,也叫做类方法。 类的静态方法不属于类的对象,而属于类本身,在该类...
- 本人有若干成套学习视频, 可试看! 可试看! 可试看, 重要的事情说三遍 包含Java, 数据结构与算法, iOS...
- python类的静态方法和类方法区别 先看语法,python 类语法中有三种方法,实例方法,静态方法,类方法。 本...
- 以一份代码为例 使用命令clang -rewrite-objc hello.m之后可以得到源码,源码量很大不必都看...