#import <Foundation/Foundation.h>
/*
事物名稱: iPhone
屬性: 顏色, 型號, cpu, 尺寸 == 成員變量
行為:打電話, 發(fā)短信, 上網(wǎng), 獲取本機信息 == 成員方法
*/
typedef enum
{
kIColorBlack, // 黑色
kIColorWhite, // 白色
kIColorTuHaoJin // 土豪金
} IColor;
// 1.編寫類的聲明
@interface Iphone : NSObject
{
@public
float _model; // 型號 0
int _cpu; // cup 0
double _size; // 尺寸 0
// int _color; // 顏色 0代表黑色 1代表白色 2土豪金
// enum IColor _color;
IColor _color;
}
- (void)about;
- (char *)loadMessage;
- (int)signal:(int)number;
- (int)sendMessageWithNumber:(int)number andContent:(char *)content;
+ (int)sumWithValue1:(int)value1 andValue2:(int)value2;
//- (NSString *)colorWithNumber:(IColor)number;
+ (NSString *)colorWithNumber:(IColor)number;
@end
// 2.編寫類的實現(xiàn)
@implementation Iphone
// 行為的實現(xiàn)
- (void)about
{
/*
// char *name;
NSString *name;
switch (_color) {
case 0:
name = @"黑色";
break;
case 1:
name = @"白色";
break;
case 2:
name = @"土豪金";
break;
default:
name = @"華強北";
break;
}
// NSLog(@"型號 = %f, cpu = %i, 尺寸= %f, 顏色 = %i", _model, _cpu, _size, _color);
*/
// Iphone *p = [Iphone new];
// NSString *name = [p colorWithNumber:_color];
NSString *name = [Iphone colorWithNumber:_color];
NSLog(@"型號 = %f, cpu = %i, 尺寸= %f, 顏色 = %@", _model, _cpu, _size, name);
}
// 工具方法, 根據(jù)傳入的整數(shù)返回對應的字符串
//- (NSString *)colorWithNumber:(IColor)number
+ (NSString *)colorWithNumber:(IColor)number;
{
NSString *name;
switch (number) {
case 0:
name = @"黑色";
break;
case 1:
name = @"白色";
break;
case 2:
name = @"土豪金";
break;
default:
name = @"華強北";
break;
}
return name;
}
- (char *)loadMessage
{
return "wife is god";
}
- (int)signal:(int)number
{
NSLog(@"打電話給%i", number);
return 1;
}
- (int)sendMessageWithNumber:(int)number andContent:(char *)content
{
NSLog(@"發(fā)短信給%i, 內容是%s", number, content);
return 1;
}
+ (int)sumWithValue1:(int)value1 andValue2:(int)value2
{
return value1 + value2;
}
@end
int main(int argc, const char * argv[]) {
// 1.創(chuàng)建對象
// 每次給Iphone類發(fā)送一個new消息都會開辟一塊新的存儲空間
// 也就意味著每次發(fā)送new消息創(chuàng)建出來的對象都是一個新的對象
Iphone *p = [Iphone new];
p->_color = kIColorWhite;
p->_cpu = 1;
p->_model = 4;
p->_size = 3.5;
// 2.給對象發(fā)送消息
[p about];
return 0;
}
03-06充甚、OC類中的類方法:類方法的使用場景
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門厢蒜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人斑鸦,你說我怎么就攤上這事∠镉欤” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵嘴纺,是天一觀的道長。 經(jīng)常有香客問我栽渴,道長,這世上最難降的妖魔是什么闲擦? 我笑而不...
- 文/花漫 我一把揭開白布搓逾。 她就那樣靜靜地躺著杯拐,像睡著了一般霞篡。 火紅的嫁衣襯著肌膚如雪端逼。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼准谚!你這毒婦竟也來了?” 一聲冷哼從身側響起柱衔,我...
- 正文 年R本政府宣布粱栖,位于F島的核電站话浇,受9級特大地震影響闹究,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一吉嫩、第九天 我趴在偏房一處隱蔽的房頂上張望嗅定。 院中可真熱鬧,春花似錦露戒、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至证九,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間愧怜,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內容
- 注意一點:Foundation框架的類, 但凡是通過類工廠方法創(chuàng)建的對象都是加上autorelease了 Pers...
- 1偿曙、類中什么時候可以定義類方法: 如果你不想每次使用方法都需要創(chuàng)建對象開辟存儲空間 并且如果該方法中沒有使用到屬性...
- 古龍說蕾羊,有人的地方就有江湖。這句話在職場上龟再,同樣適用。 你身邊有沒有遇到過這種情況利凑?有些同事本職工作干得很好,但就...
- 我自己很少失眠,一開始我以為失眠是因為不夠累束凑,后來漸漸發(fā)現(xiàn),不是的汪诉,大多數(shù)人失眠是因為想太多谈秫。我也認為鱼鼓,只要告訴自...