OC特有语法总结

分类 问题
1.
什么是分类?
 
就是把一个类的功能,分出一部分来放在一个独立的文件中
2.
分类的语法是什么样的?
@interface Person(SuperMan)

3.
分类与类是什么关系?
 
分类依赖类而存在,没有类也就没有分类
4.
分类有什么作用?
用于把一个比较庞大的类,分割开来,具有相同功能的方法放到一个分类中
把太多的功能封装到一个类中,导致类文件过于庞大

5.
分类中能够像类一样声明成员变量?
不能,分类中不能够定义成员变量
1>.
难以维护
2>.
难以使用

6.
分类中能否访问原类中的成员变量?


7.
分类中能够使用self关键字吗?
不能

8.
分类中如果定义了与原类中相同的方法会调用谁?

分类中的方法会被完全覆盖掉

9.
在实际的开发中如何应用分类?

//***********************

block
问题
1.
什么是block?
block
用来保存一段代码

2.
数据类型都有那些共同的特点?


3.block
的作用是什么
   
主要用于封装有多种解决方案,或者可以用不同算法解决的问题
4.
如何定义block?
int (^sumBlock)(int, int);
void (^myBlock)();


5.
如何调用block代码块?

>5.1
如何利用block封装代码

^(int a, int b) {
    return a - b;
};

^() {
    NSLog(@"----------");
};

^ {
    NSLog(@"----------");
};

6.block
中能够访问,变量吗?
1>block
内部可以访问外面的变量
2>
默认情况下,block内部不能修改外面的局部变量
3>
给局部变量加上__block关键字,这个局部变量就可以在block内部修改

7.
利用typedef定义block类型
typedef int (^MyBlock)(int, int);
//
以后就可以利用MyBlock这种类型来定义block变量
MyBlock block;
MyBlock b1, b2;

b1 = ^(int a, int b) {
    return a - b;
};

MyBlock b3 = ^(int a, int b) {
    return a - b;
};

8.block
跟函数很像:
1>
可以保存代码
2>
有返回值
3>
有形参
4>
调用方式一样

//******************
protocol
问题
1.
什么是协议?
声明一些方法,协议本身

2.
类如何遵守协议?

3.
一个类可以遵守多个协议吗?

4.
协议中<NSObject>是什么意思?

5.
子类继承了父类,那么子类会遵守父类中遵守的协议吗?
6.
协议中能偶定义成员变量?
7.
协议可以在类的声明文件中.h文件中定义吗?
8.
如何约束一个对象类型的变量要存储的地址是遵守一个协议对象?

SEL
问题
1.
什么是SEL?
2.
如何声明一个SEL?
3.
通过那些方法能够,调用SEL包装起来的方法?

单利 模式问题
1.
什么是单利模式?
2.
单利的作用是什么?
3.
什么时候用单利模式?
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值