Saturday, 14 September 2013

Categories trong Objective - C

Categories là một khái niệm mới khi lập trình với Objective - C,
Categories là gì và dùng như nào? xin mời xem tiếp dưới bài:


// Đặt vấn đề:  Khi ta muốn thêm một số phương thức vào một lớp có sẵn ta sẽ có 2 cách

-- Viết lại mã nguồn
-- Dùng Category mở rộng lớp mà không cần phải viết lại mã nguồn của lớp cũ, Category cho phép ta mở rộng lớp cũ trong một bộ thực thi khác.

// dùng categories như nào:

Example:

//  B1: Tạo Class MyClass như sau

MyClass.h

@interface MyClass
- (void) print;
@end


MyClass.m

#import "MyClass.h"
@implemention MyClass
- (void) print{
NSLog(@"Đây là Print");
}
@end


// B2: Muốn thêm một phương thức "println" ta sử dụng tính năng của Category

MyCategory.h

#import "MyClass.h"
@interface MyCategory( MyNewCategory )
- (void) println;
@end

MyCategory.m

#improt "MyCategory.h"
@implemention MyCategory()d
-(void) println{
NSLog( @" Đây là Println " );
}
@end


// B3: Sử dụng Class đã tạo

Main.m

#import "MyCategory.h"
#import "MyClass"

int main( int argc, char *argv ){

MyClass *myObject = [ [  Myclass alloc  ] init  ] ;
[ myObject print ];
[ myObject println ];

}


int main ( int argc, char *argv )  {

NSLog(@" HelloWord");
}

0 comments:

Post a Comment