类方法:
类方法是可以直接使用类的引用,不需要实例化就可以直接使用的方法。一般写一些工具方法。
类方法:
1.声明和实现的时候,以(+)开头
2.类方法属于类的本身,只能通过类名调用
3.类方法不能直接访问成员变量
4.类方法不能直接调用对象方法(可以间接调用)
间接调用:
1> 把对象当做形参传入
2> 在类方法中创建一个对象
类方法的好处:
调用类方法的时候,不用创建对象,更节省内存,调用比较简单,效率高。
什么时候使用类方法?
当不需要访问成员变量的时候
复习对象方法:
1.声明和实现的时候,以(-)开头
2.对象方法隶属于对象,只能通过对象调用
3.对象方法可以直接访问成员变量
4.对象方法可以调用其他的对象方法以及类方法
实例化对象两种方法(建议使用第二种):
Person * p = [Person new];
Person * p = [[Person alloc] init];
构造方法:
对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化。
instancetype和id的异同:
1、相同点
都可以作为方法的返回类型
2、不同点
①instancetype可以返回和方法所在类相同类型的对象,id只能返回未知类型的对象;
②instancetype只能作为返回值,不能像id那样作为参数。