程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> Objective-C中的協議和委托

Objective-C中的協議和委托

編輯:關於C語言

Objective-C中的協議(Protocol)類似於常用的接口,協議(Protocols)中定義的方法,在類中實現。

@protocol MyFirstProtocol

- (void)myFirstProtocolMethod;

@end

在iPhone OS中,協議(Protocol)通常用來實現委托對象(Delegate Object)。委托對象(Delegate Object)一般用來自己定義行為或者動作,也就是調用自己定義方法,但自己不實現該方法,委托其它的類來實現該方法。

UIApplication類就是一個典型的例子。UIApplication類中定義了一個應用程序應有的行為或者動作。而不是強制讓你的UIApplication子類去接受當前應用程序的狀態消息並做出相應處理。UIApplication類通過調用特殊的方法,來傳遞這些消息給它的委托對象。這個委托對象通過實現名為UIApplicationDelegate的協議(Protocol),之後就可以接受到當前應用程序的狀態消息並做出相應處理。比如內存不夠的錯誤,應用程序被中斷等重要消息。

下面是一個HelloWorld代碼:

main.m

#import    
int main(int argc, char *argv[])    
{    
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];    
int retVal = UIApplicationMain(argc, argv, nil, nil);    
[pool release];    
return retVal;    
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved