OC 语法基础一

1.判断字符串开头 或 结尾

测试字符串是否以aString开始

- (BOOL)hasPrefix:(NSString *)aString;

 

测试字符串是否以aString结尾

- (BOOL)hasSuffix:(NSString *)aString;

2.有子类的对象AClass 在 获取 单例 的时候 考虑 用 instancetype  而不是 自身AClass。

3.通过 类名称 判断一个类

[self isKindOfClass:NSClassFromString(@"ViewController")]

4.@property int age; //编译器自动解释成 int age的get/set方法 的声明。

5.SEL 对象即一个selector对象,保存一个方法的地址。 

例子:

SEL say1 = @selector(say); //创建say方法的SEL对象  
SEL say2 = NSSelectorFromString(@"say"); //从方法名字符串 创建SEL对象 

- (void) say  
{  
    NSLog(@"调用了say方法");  
}

6.常见打印log

NSLog(@"------------------------------------------------");  
    SEL s = _cmd; // 每一个方法内都有一个_cmd,表示方法自身  
    NSLog(@"当前方法(NSStringFromSelector):%@", NSStringFromSelector(s)); //NSStringFromSelector 返回方法名  
    NSLog(@"所在文件完整路径(__FILE__):%s", __FILE__);  
    NSLog(@"所在文件名:%@", [[NSString stringWithUTF8String:__FILE__] lastPathComponent]);  
    NSLog(@"当前行号(__LINE__):%d", __LINE__);  
    NSLog(@"当前方法签名(__func__):%s", __func__);  
    NSLog(@"当前方法签名(__PRETTY_FUNCTION__):%s", __PRETTY_FUNCTION__);//在c++代码中,会包含类型的详细信息  
    NSString* clz = NSStringFromClass([Person class]); //返回一个Class对象的类名  
    NSLog(@"当前类名(NSStringFromClass):%@", clz);  
     
    NSLog(@"%@", [NSThread callStackSymbols]);// 返回当前调用栈信息  

  

posted @ 2015-10-12 16:08  七夜i  阅读(316)  评论(0编辑  收藏  举报