OC中-方法到底是如何使用的?】的更多相关文章

方法:方法是Objective-C独有的一种结构,只能在Objective-C中声明.定义和使用,C语言不能声明.定义和使用. 1.类方法以+号开头,对象方法以-号开头+ (void) init;        // 类方法- (void) show;                // 对象方法 2.在@interface和@end之间声明,在@implementation和@end之间定义@interface Test : NSObject // 方法声明+ (void) init; - (…
OC特有的分类Category,依赖于类.它可以在不改变原来的类内容的基础上,为类增加一些方法.分类的使用注意: (1)分类只能增加方法,不能增加成员变量: (2)在分类方法的实现中可以访问原来类中的成员变量: (3)分类中可以重新实现原来类中的方法,但是会覆盖掉原来的方法,导致原来的方法无法再使用: (4)方法调用的优先级:分类->原来的类->父类,若包含有多个分类,则最后参与编译的分类优先:…
1.利用webView控件加载本地html5或者网络上html5 2.设置控制器为webView的代理,遵守协议 3.实现代理方法webViewDidFinishLoad: 4.在代理方法中进行操作HTML5中的标签(CRUD→增删改查) 1.用类选择器或者id选择器或者标签选择器等选择要进行操作的标签 2.把选择好的标签转换成字符串 3.webView调用stringByEvaluatingJavaScriptFromString方法 应用场景:比如加载了网络上的百度链接,但是不想要它某个链接…
PS:个人感觉跟C#的静态方法和非静态方法有点类似,仅仅是有点类似.明杰老师说过不要总跟之前学过的语言做比较,但是个人觉得,比较一下可以加深印象吧.重点是自己真的能够区分开! 一.OC中的对象方法 1.以减号“-”开头 2.只能让对象调用,没有对象,这个方法根本不可能被执行 3.对象方法能访问实例变量(也就是成员变量) 二.OC中的类方法 1.以加号“+”开头 2.只能用类名调用,对象不能调用 3.类方法中不能访问实例变量(也就是成员变量) 4.适用场合:当不需要访问成员变量的时候,尽量用类方法…
1.声明式属性    a.实例变量    b.声明属性        自动生成setter/getter方法        .h ->@property 属性类型 属性名;        .m ->@synthesize 属性名 = 实例变量名;    c.点语法2.IOS5中的属性    a.实例变量  省        会自动生成实例变量,实例变量名 等于 _属性名    b.声明属性        @property 属性类型 属性名;        @synthesize 属性名 =…
在对类和对象有一定了解之后,我们进一步探讨实例变量的可见度等相关知识 实例变量的可见度分为三种情况:public(共有),protected(受保护的,默认),private(私有的),具体的不同和特点如下:     具体的使用示例如下:     编程时默认的可见度是@protectde,为什么不使用@public呢? 因为OC是面向对象编程,使用@public关键字,暴漏了类内部的细节,从而不符合面向对象语言的三大特性之一——封装 实例变量经过@protectde修饰之后,我们就不能在该类和其…
我们直入主题,关于property方法,我们先来了解一下相关的知识,首先是成员变量,实例变量,属性变量. 我们定义一个类来看一下 @interface Person :NSObject{ NSInteger age;      //年龄变量 NSString *name;   //名字变量 } @property(nonatomic,assign)float height;  //身高变量 @property(nonatomic,strong)NSString *skinColor;   //肤…
1. Swift与oc混编译具体怎么实现,这儿我就不重复讲出了,网上有大把的人讲解. 2. 在swift与OC混编的编译环境下, oc类不能访问swift创建类中的代理? 解决方法如下: 在代理的头部加上 @objc(代理名字),这样就在外部就可以访问了,如下图. 然后就和oc中的代理一样,写上协议方法,就可以进行你想要的操作了. 3. swift中的回调方法介绍: 1. 通过代理 ,写法大家可以看上面的两张图片,和oc代理差不多. 2. 通过闭包来实现oc中代码块(Block)的方法,来进行代…
总结OC中数组排序3种方法:sortedArrayUsingSelector:;sortedArrayUsingComparator:;sortedArrayUsingDescriptors: 大体上,OC中常用的数组排序有以下几种方法:sortedArrayUsingSelector:;sortedArrayUsingComparator:;sortedArrayUsingDescriptors:. 1.简单排序(sortedArrayUsingSelector:) 如果只是对字符串的排序,可…
OC中如果要将自定义类型的对象保存到文件中,必须进行以下三个条件: 想要把存放自定义类型的数组进行 持久化(就是将内存中的临时数据以文件<数据库等>的形式写到磁盘上)必须满足: 1. 自定义对象必须要序列化(将数据有序的存放) 2. 需要使用归档来进行持久化 3. 如果要加载持久化文件需要进行反序列化(就是将有序存放的数据读取并变成自定义对象) 第一要将自定义类型序列化以及第三步并将文件反序列化必须实现OC中的  <NSCoding>协议. 以Student类为例 @interfa…