中文字幕一区二区人妻电影,亚洲av无码一区二区乱子伦as ,亚洲精品无码永久在线观看,亚洲成aⅴ人片久青草影院按摩,亚洲黑人巨大videos

Objective C 基礎(chǔ)知識

在iOS的開發(fā)中使用的是Objective C語言,它是一種面向?qū)ο蟮恼Z言,因而對于已經(jīng)掌握面向?qū)ο笳Z言知識的編程者來說是非常簡單的。


接口和實現(xiàn)

在Objective里完成的文件被稱為界面文件,該類文件的定義被稱為實現(xiàn)文件。

一個簡單的界面文件MyClass.h將如圖所示:

@interface MyClass:NSObject{ 
// 類變量聲明
}
// 類屬性聲明
// 類方法和聲明
@end

執(zhí)行MyClass.m文件,如下所示

@implementation MyClass
// 類方法定義
@end

創(chuàng)建對象

完成創(chuàng)建對象,如下所示

MyClass  *objectName = [[MyClass alloc]init] ;

方法(methods)

Objective C中聲明的方法如下所示:

-(returnType)methodName:(typeName) variable1 :(typeName)variable2;

下面顯示了一個示例:

-(void)calculateAreaForRectangleWithLength:(CGfloat)length 
andBreadth:(CGfloat)breadth;

你可能會想什么是andBreadth字符串,其實它的可選字符串可以幫助我們閱讀和理解方法,尤其是當(dāng)方法被調(diào)用的時候。

在同一類中調(diào)用此方法,我們使用下面的語句。

[self calculateAreaForRectangleWithLength:30 andBreadth:20];

正如上文所說的andBreath使用有助于我們理解breath是20。Self用來指定它是一個類的方法。

類方法(class methods)

直接而無需創(chuàng)建的對象,可以訪問類方法。他們沒有任何變量和它關(guān)聯(lián)的對象。示例如下:

+(void)simpleClassMethod;

它可以通過使用類名(假設(shè)作為MyClass類名稱)訪問,如下所示:

[MyClass simpleClassMethod];
實例方法

可以創(chuàng)建的類的對象后只訪問實例方法,內(nèi)存分配到的實例變量。實例方法如下所示:

-(void)simpleInstanceMethod; 

創(chuàng)建類的對象后,它可以訪問它。如下所示:

MyClass  *objectName = [[MyClass alloc]init] ;
[objectName simpleInstanceMethod];

Objective C的重要數(shù)據(jù)類型

序號數(shù)據(jù)類型
1NSString字符串
2CGfloat 浮點值的基本類型
3NSInteger 整型
4BOOL 布爾型

打印日志

NSLog用于打印一份聲明,它將打印在設(shè)備日志和調(diào)試版本的控制臺和分別調(diào)試模式上。

如 NSlog(@"");


控制結(jié)構(gòu)

除了幾個增補的條款外,大多數(shù)的控制結(jié)構(gòu)與C以及C++相同

屬性(properties)

用于訪問類的外部類的變量屬性

比如:@property(非原子、強)NSString*myString

訪問屬性

可以使用點運算符訪問屬性,若要訪問上一屬性可以執(zhí)行以下操作

self.myString = @"Test";

還可以使用set的方法,如下所示:

[self setMyString:@"Test"];

類別(categories)

類用于將方法添加到現(xiàn)有類。通過這種方法可以將方法添加到類,甚至不用執(zhí)行文件,就可以在其中定義實際的類。MyClass的樣本類別,如下所示:

@interface MyClass(customAdditions)
- (void)sampleCategoryMethod;
@end

@implementation MyClass(categoryAdditions)

-(void)sampleCategoryMethod{
   NSLog(@"Just a test category");
}

數(shù)組

NSMutableArray 和 NSArray 是 ObjectiveC 中使用的數(shù)組類,前者是可變數(shù)組,后者是不可變數(shù)組。如下:

NSMutableArray *aMutableArray = [[NSMutableArray alloc]init];
[anArray addObject:@"firstobject"];
NSArray *aImmutableArray = [[NSArray alloc]
initWithObjects:@"firstObject",nil];

詞典

NSMutableDictionary和NSDictionary是Objective中使用的字典,前者可變詞典,后者不可變詞典,如下所示:

NSMutableDictionary*aMutableDictionary = [[NSMutableArray alloc]init];
[aMutableDictionary setObject:@"firstobject" forKey:@"aKey"];
NSDictionary*aImmutableDictionary= [[NSDictionary alloc]initWithObjects:[NSArray arrayWithObjects:
@"firstObject",nil] forKeys:[ NSArray arrayWithObjects:@"aKey"]];