OC之类方法
来源:互联网 发布:海尔是国企吗 知乎 编辑:程序博客网 时间:2024/06/03 19:33
#import<Foundation/Foundation.h>
/*
1、对象方法
(1)减号-开头
(2)只能由对象来调用
(3)对象方法中能访问当前对象的成员变量(实例变量)
2、类方法
(1)加号+开头
(2)只能由类(名)来调用
(3)类方法中不能访问成员变量(实例变量)
3、类方法的好处和使用场合
(1)不依赖于对象,执行效率高
(2)能用类方法,尽量用类方法
(3)场合:当方法内部不需要使用到成员变量时,就可以改为类方法
可以允许类方法和对象方法同名
*/
@interfacePerson : NSObject
{
int age;
}
// 类方法都是以+开头
+(void)printClassName;
-(void)test;
+(void)test;
@end
@implementationPerson
+(void)printClassName
{
// error:instancevariable 'age' accessed in class method
// 实例变量age不能在类方法中访问
//NSLog(@"这个类叫做Person-%d",age);
}
-(void)test
{
NSLog(@"111-%d", age);
//[Person test];
}
+(void)test
{
// 会引发死循环
//[Person test];
NSLog(@"333");
// 会引发死循环
// [Person test];
}
@end
intmain()
{
//[PersonprintClassName];//直接用类名调用类方法
[Person test];
//Person *p =[Person new];
//[p test];
/*
-[Person printClassName]: unrecognizedselector sent to instance 0x7fa520c0b370
*/
// 系统会认为现在调用的printClassName是个对象方法
//[p printClassName];
return 0;
}
【备注】不能使用指针去访问类方法,会报错。类方法和成员(对象)方法可以同名。
- OC之类方法
- oc基础之类方法与对象方法的比较(一)
- OC之类的继承
- oc 之类层次结构
- oc之类别
- OC之类别总结
- 黑马程序员——OC之类方法与set、get方法
- OC语言之类和对象
- OC学习之类的进阶
- oc学习之类与对象
- oc基础知识之类的定义
- OC之类描述和选择子
- OC学习笔记之类的封装
- Snail—OC学习之类及对象
- Snail—OC学习之类别Category
- 黑马程序员-----OC学习之类与对象
- 黑马程序员-----OC学习之类的封装
- oc学习总结之类的本质
- linux下使用hostapd时,报错“recv: Network is down”,不能产生ssid或ssid消失的解决方案
- 在Mac OS X上安装Virtual Box 和 Vagrant
- verilog HDL 学习的要点
- Android surfaceview 自定义相机 拍照(闪光灯、前后摄像头)
- Swift Tutorial(swift 教程) 3:Arrays, Objects, and Classes数组,对象和类
- OC之类方法
- 判断设备是否是wifi联网
- NoSql——redis(基础)
- message sent to deallocated instance
- Unicode(UTF-8, UTF-16)令人混淆的概念
- Spring IoC容器
- C Function Call Conventions and the Stack
- mybatis学习教程(二)初级的增、删、查、改
- 新手推荐:Hadoop安装教程_单机/伪分布式配置_Hadoop-2.7.1/Ubuntu14.04