zoukankan      html  css  js  c++  java
  • IOS中的类方法和实例方法

    声明方法的开头为正号(+)的通知编译器表示为类方法class method,类方法属于类对象而不是类的实例对象,通常用于创建新的实例。我们称这种用来创建新对象的类方法为工厂方法 factory method。

    如果某个方法所实现的是很通用的功能,比如创建一个实例对象或访问一些全局类数据,最好声明为类方法。

    stringWithFormat:是一个类方法。

    例如:  

    NSString *str = [NSString stringWithFormat:@"%f", value];

    直接以类NSString调用stringWithFormat方法。

    alloc 是一个类方法。

    下面是一下类方法举例:

    + (UIColor *)redColor;        // 1.0, 0.0, 0.0 RGB 

    + (UIColor *)greenColor;      // 0.0, 1.0, 0.0 RGB 

    + (UIColor *)blueColor;       // 0.0, 0.0, 1.0 RGB

    self.textColor = [UIColor whiteColor];

    +(NSString *)currentLanguage;//声明

    //实现

    +(NSString *)currentLanguage{

        NSUserDefaults *def = [NSUserDefaults standardUserDefaults];

        NSArray* languages = [def objectForKey:@"AppleLanguages"];

        return  [languages objectAtIndex:0];

    }

    //调用

    NSString *lan = [NSDate currentLanguage];

    ************************************************************

    声明方法的开头为负号(-)的通知编译器表示为实例方法;在指定的对象实例中起作用。

    - (NSString *) stringFromMD5;

    NSString * password=@"123456";

    NSString *strMd5=[password stringFromMD5];  //在指定的对象实例中起作用

    -(NSString *) stringWithFormat_yyyy_MM_dd;//声明

    //实现

    -(NSString *) stringWithFormat_yyyy_MM_dd{

        return [self stringWithFormat:@"yyyy-MM-dd"];

    }

    //调用

    NSString * strDate=[[NSDate date] stringWithFormat_yyyy_MM_dd];

    -(NSString *)chineseStringDate;

    -(NSString *)chineseStringDate{

        return [self stringWithFormat:@"yyyy年M月d日"];

    }

    NSString * str = [self chineseStringDate];//2014年12月27日

  • 相关阅读:
    Java多线程 ReadWriteLock、StampedLock用法
    Java多线程基础
    Java中创建多线程
    Java中多线程同步
    Java多线程 synchronized与ReentrantLock用法
    Linux6配置bond链路聚合
    Bash Shell命令流程
    location uri 添加 / 和不添加 / 的区别?
    Nginx负载均衡健康检查nginx_upstream_check_module
    Zabbix4.0源码安装基于LNMP
  • 原文地址:https://www.cnblogs.com/zhaosuning/p/9430832.html
Copyright © 2011-2022 走看看