zoukankan      html  css  js  c++  java
  • 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]);// 返回当前调用栈信息  
    

      

  • 相关阅读:
    leetcode-剑指19-OK
    leetcode-剑指38-?
    leetcode-剑指36-OK
    leetcode-剑指41-OK
    leetcode-剑指20-OK
    leetcode-剑指16-OK
    nginx重写路由隐藏入口文件报错引发的思考
    Go之并发
    Go之接口
    Go实现学生管理系统
  • 原文地址:https://www.cnblogs.com/qiyer/p/4871956.html
Copyright © 2011-2022 走看看