您的位置:首页 > 其它

OC 语法基础一

2015-10-12 16:08 447 查看
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]);// 返回当前调用栈信息


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: