A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Star_FDt78 中级黑马   /  2015-12-19 21:29  /  781 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

类方法学习引入

思考:
首先创建一个类
类名:Calculator
属性: 第一个数num1  第二个数num2  运算结果 result
行为:加法add  减法subduction 乘法multiplication 除法division

1.类方法的实现
    + 开头的方法  定义过程和对象方法一致,只是以+开头

调用:
[类名 类方法名];

优点:
1> 节省内存空间
2> 提高了效率
3> 作为工具方法

类方法容易犯的错误
1> 类方法中不能使用类的实例变量

类方法和对象方法比较
2> 类方法:+ 开头
     对象方法:- 开头
3> 对象方法可以调用当前对象或者其他对象的方法:
     1--可以在当前方法中创建其他对象,用新对象调用
     2--使用self:[self 方法名]
     3--对象作为方法的参数传递过来

4> 在类方法中可以调用其他的类方法
     1--可以直接使用本类类名(其它类名),记得包含头文件
5> 类方法中可以调用对象方法
     1--对象作为方法的参数传递
     2--创建一个对象
6> 类方法不可以调用自身,会造成死循环

类方法的应用场景
例题:
有一个手机的类IPhone,该类中有一个枚举类型的实例变量_color
kColorBlack 黑
kColorWhite 白
kColorTHJ    土豪金
1> 请定义一个类方法,返回手机真实颜色,而非枚举值

3 个回复

倒序浏览
刚看完OC第一天,与呼呼
回复 使用道具 举报
我还没开始看oc
回复 使用道具 举报
类方法比对象方法好用,但是大部分都是用对象方法 !  总的来说  类方法 节省内存啊  IOS 内存真TMD重要!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马