iOS开发之oc(十四)--protocol协议(2)补充

(一)

protocol-限制对象

1.创建一个最纯洁的对象

2.示范出如何限制

(二)protocol--协议书写位置

时间: 2024-10-24 17:18:57

iOS开发之oc(十四)--protocol协议(2)补充的相关文章

李洪强iOS开发之OC语言BLOCK和协议

OC语言BLOCK和协议 一.BOLCK (一)简介 BLOCK是什么? 苹果推荐的类型,效率高,在运行中保存代码.用来封装和保存代码,有点像函数,BLOCK可以在任何时候执行. BOLCK和函数的相似性: (1)可以保存代码(2)有返回值(3)有形参(4)调用方式一样. 标识符 ^ (二)基本使用 (1)定义BLOCK变量 Int (^SumBlock)(int,int);//有参数,返回值类型为int Void (^MyBlock)()://无参数,返回值类型为空 (2)利用block封装代

iOS开发之oc(八)--小知识补充 init方法补充

小知识补充 一. id 1. 简介 万能指针,能指向任何OC对象,相当于NSObject * id类型的定义 typedef struct objc_object { Class isa; } *id; 2. 使用 // 注意:id后面不要加上* id p = [Person new]; 3. 局限性 调用一个不存在的方法,编译器会马上报错 二. .h和.m文件的抽取 1)每个类分布在不同文件中 2)类的声明放在.h文件,类的实现放在.m文件 3)若想使用某个类,就包含某个类的.h声明文件 三.

iOS开发之oc(十四)--protocol协议(1)

protocol:协议 想要拥有某些方法声明通过: // : 继承父类 // <> 遵守协议 协议:就是用来声明方法的,想要拥有某些方法声明,只需要遵守协议. 1.协议的定义 @protocol 协议名称 <NSObject> // 方法声明列表.... @end // 定义了一个名叫MyProtocol的协议 @protocol MyProtocol <NSObject> // @required 要求实现,不实现就会发出警告(默认是这个) // @optional

ios开发之OC基础-类和对象

本系列的文章主要来自于个人在学习前锋教育-欧阳坚老师的iOS开发教程之OC语言教学视频所做的笔记,边看视频,边记录课程知识点.建议大家先过一遍视频,在看视频的过程中记录知识点关键字,把把握重点,然后再将零散的知识点整理出来.这样的学习方法会带来更多的收获,同时要多做练习,按照思路,默写.改写代码.在这里,感谢欧阳坚老师,学习你的课程使我走上了ios的开发之路. 一定要明确一个要从事的方向,要不然就会感到迷茫.学习ios开发,并且从事ios开发这个行业,这就是我的选择.看到我的博客系列文章,其中大

李洪强iOS开发之OC语言description方法和sel

OC语言description方法和sel 一.description方法 Description方法包括类方法和对象方法.(NSObject类所包含) (一)基本知识 -description(对象方法) 使用NSLog和@%输出某个对象时,会调用对象的description方法,并拿到返回值进行输出. +description(类方法) 使用NSLog和@%输出某个对象时,会调用类对象的description方法,并拿到返回值进行输出,把整个对象一次性打印出来,打印对象使用%@. 使用@%打

iOS开发之oc(十二)--内存管理ARC

(一)自动内存管理 --ARC 1>简单点说就是让编译器完成堆空间的引用计数的加减,自动释放,程序员不再写retain 和release等方法 2>OC的自动内存管理不同于java 的垃圾回收,而是在预处理是直接在应该保留的地方加上retain,在应该改释放的地方加上release,是直接添加代码 3>从效率上讲,ARC优于手动内存管理 2.1.1 ARC 的局限性 1>使用ARC可能因为代码的不规范,导致内存提前释放 2>导入第三方库,或者导入旧代码,这些代码不支持ARC

iOS开发之oc(二十二)--Foundation(7)NSValue、NSDate

NSNumber之所以能包装基本数据类型为对象,是因为继承了NSValue (一)NSValue值转换 #import <Foundation/Foundation.h> int main() { // 结构体--->OC对象 CGPoint p = CGPointMake(10, 10); // 将结构体转为Value对象 NSValue *value = [NSValue valueWithPoint:p]; // 将value转为对应的结构体 // [value pointValu

iOS开发之oc(十九)--Foundation(4) NSSet

NSSet作用:存放的是没有顺序的对象 NSSet和NSArray的对比 1> 共同点 •都是集合,都能存放多个OC对象 • 只能存放OC对象,不能存放非OC对象类型(基本数据类型:int.char.float等,结构体,枚举) •本身都不可变,都有一个可变的子类 2> 不同点 •NSArray有顺序,NSSet没有顺序 代码示例 #import <Foundation/Foundation.h> int main() { NSMutableSet *s = [NSMutableS

iOS开发之oc(二十)--Foundation(5)NSDictionary

/*  集合  1.NSArray\NSMutableArray •有序 •快速创建(不可变):@[obj1, obj2, obj3] •快速访问元素:数组名[i]   2.NSSet\NSMutableSet •无序  3.NSDictionary\NSMutableDictionary •无序 •快速创建(不可变):@{key1 : value1,  key2 : value2} •快速访问元素:字典名[key] */ NSDictionary:字典 代码示例 1> void create(