Time of Update: 2015-11-25
標籤:導航:基礎資料型別 (Elementary Data Type)物件類型id類型 1.基礎資料型別 (Elementary Data Type) Objective-C中的基本類型與C語言的基本類型一樣,主要有:int,long,float,double,char,void,bool等. 值得注意的是,在Foundation架構中,系統為某些資料起了別名,如: NSInteger 是
Time of Update: 2015-11-25
標籤:[super init] 的結果可能有三種: 第一種: [super init] 初始化成功,這個是最最正常的情況。 第二種: [super init] 初始化失敗,我們都知道oc的兩步建立,alloc開闢記憶體空間,init初始化對象,但是init還有另外一個作用,在初始化失敗的時候,init方法會返回一個nil。回頭行文的最上面,如果self為nil,那麼if(self)語句的內容,將不被執行,已確保程式健壯安全。 - (instancetype)init {
Time of Update: 2015-11-25
標籤: 一、@dynamic與@synthesize的區別@property有兩個對應的詞,一個是@synthesize,一個是@dynamic。如果@synthesize和@dynamic都沒寫,那麼預設的就是@syntheszie var = _var; @synthesize的語義是如果你沒有手動實現setter方法和getter方法,那麼編譯器會自動為你加上這兩個方法。
Time of Update: 2015-11-24
標籤: 程式檔案分為標頭檔(.h)和實現檔案(.m);使用#import關鍵字將所需的標頭檔匯入程式,並且可以避免程式重複引用相同的標頭檔;@autoreleasepool { … } 自動釋放池;符號“@”被廣泛使用,體現Objective-C的新特性;使用NSLog執行控制台列印輸出內容(例如:NSLog(@”Hello
Time of Update: 2015-11-23
標籤:Objective-C委託和協議本沒有任何關係,協議如前所述,就是起到C++中純虛類的作用,對於“委託”則和協議沒有關係,只是我們經常利用協議還實現委託的機制,其實不用協議也完全可以實現委託。AD:【活動】Web和APP相容性實戰 Win10訓練營免費報名
Time of Update: 2015-11-23
標籤: 在物件導向語言中,介面的多種不同的實現方式即為多態。多態對於不同對象響應同一個方法時做出不同反應多態在代碼中的體現,即為多種形態,必須要有繼承,沒有繼承就沒有多態在使用多態時,會進行動態檢測,以調用真是的對象方法 //// main.m// mobile#import <Foundation/Foundation.h>#import "Communication.h"#import "Electrograph.h"#import
Time of Update: 2015-11-23
標籤:1、分類(category)使用Object-C中的分類,是一種編譯時間的手段,允許我們通過給一個類添加方法來擴充它(但是通過category不能添加新的執行個體變數),並且我們不需要訪問類中的代碼就可以做到,這點和javascript中使用原型來定義屬性有點類似。我們可以為一個類建立一個新的方法,而不需要在代碼中編輯類定義。下面就是定義並使用分類的例子程式,通過下面代碼,我們可以給Object-C中的NSString
Time of Update: 2015-11-22
標籤:Objective-C中的分類允許我們通過給一個類添加方法來擴充它(但是通過category不能添加新的執行個體變數),並且我們不需要訪問類中的代碼就可以做到。Objective-C中的協議是普遍存在的介面定義方式,即在一個類中通過@protocol定義介面,在另外類中實現介面,這種介面定義方式也成為“delegation”模式,@protocol聲明了可以唄其他任何方法類實現的方法,協議僅僅是定義一個介面,而由其他的類去負責實現。在本章中,我們來看看runtime
Time of Update: 2015-11-20
標籤: self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; self.window.backgroundColor = [UIColor whiteColor];UITabBarController *mainTabBar = [[UITabBarController alloc] init]; UIView *backView =
Time of Update: 2015-11-20
標籤:IOS的方法經常都有更迭,以前彈出框使用 AlertView,現在使用UIAlertControllerAlertView的宏定義#define showMessage(__MESSAGE__) \UIAlertView *alertView_ = [[UIAlertView alloc] initWithTitle:@"提示" \message:__MESSAGE__ \delegate:nil \cancelButtonTitle:@"確定"
Time of Update: 2015-11-19
標籤:前面我們討論了Runtime中對類和對象的處理,及對成員變數與屬性的處理。這一章,我們就要開始討論Runtime中最有意思的一部分:訊息處理機制。我們將詳細討論訊息的發送及訊息的轉寄。不過在討論訊息之前,我們先來瞭解一下與方法相關的一些內容。基礎資料類型SELSEL又叫選取器,是表示一個方法的selector的指標,其定義如下:typedef struct objc_selector
Time of Update: 2015-11-19
標籤:http://www.cnblogs.com/ygm900/archive/2013/01/16/2862678.html我們都知道objective C不能像C++一樣支援多繼承,但是在OC的使用經常會碰到需要使用多繼承的情況。例如,ClassA中有methodA,ClassB中 methodB,而現在需要使用這兩個類中的方法。如何按照C++的編程思路,毫無疑問採用多繼承就搞定了,在OC就需要動動腦子了。
Time of Update: 2015-11-18
標籤:1 ifmrHiggieIsMean = NO;if (mrHiggieIsMean) { NSLog(@"Confirmed: he is super mean");} 2 if elseBOOL mrHiggieIsMean = [mrHiggie areYouMean];if (mrHiggieIsMean) { NSLog(@"Confirmed: he is super mean");}else{ NSLog(@"No, actually he‘s really
Time of Update: 2015-11-18
標籤:1、 三角函數 double sin (double); 正弦 double cos (double);餘弦 double tan (double);正切 2 、反三角函數 double asin (double); 結果介於[-PI/2, PI/2] double acos (double); 結果介於[0, PI] double atan (double); 反正切(主值), 結果介於[-PI/
Time of Update: 2015-11-17
標籤: 今天在項目中用到一些常用的字串,於是我直接建立了一個constant.h檔案用#define來定義。 後來在網上看各位大神都建議用字串常量來定義,於是我把所有的宏定義都換成了NSString * const,比如NSString * const LTNNextStep = @"下一步"; 該.h檔案主要在兩個類中使用,但是#import該檔案後發現了一個連結問題:ld:11 duplicate symbols for architecture x86_64clang: error:
Time of Update: 2015-11-16
標籤:先只看到第七章基礎資料型別 (Elementary Data Type),指派陳述式for迴圈,while迴圈,do while迴圈分支判斷,if語句,ifelse語句,switch語句//// main.m// Myoc//// Created by DBJ on 2015/11/15.// Copyright ? 2015年 DBJ. All rights reserved.// clang -fobjc-arc
Time of Update: 2015-11-17
標籤:Objective-c類,對象,方法實際的變數是類的一個執行個體。執行個體能執行的操作稱為方法。[ClassOrInstance method];定義類@interface classname : superclass define method as interface@end 類實現@implementation class {變數}methods@end myFraction = [[Fraction alloc] init];ex:#import
Time of Update: 2015-11-15
標籤: Protocol interface是一個類的標頭檔的聲明不是真正意義上的介面的意思。protocol才是OC的介面。作用:用來聲明一些方法也就是說,一個prtocol是由一系列方法聲明組成的。文法格式:@protocol 協議名 //方法的聲明列表@end類遵守協議一個類可以遵守1個或多個協議任何類只要遵守了Protocol,就相當於擁有了Protocol的所有方法聲明@interface 類名 : 父類 <協議名稱1, 協議名稱2,…>@
Time of Update: 2015-11-14
標籤:一 執行個體方法可見度,方法1.執行個體變數的可見度可見度
Time of Update: 2015-11-13
標籤:在Objective-c中定義類時,也可以使用類似於C++中public、private來修飾成員變數,如下:[cpp] view