今天第一次看OC,发现不少有趣的特性,罗列如下
1,默认数据成员的访问限制是保护型,神奇啊(就是说我要是想把它完全封闭住还要手动添加一个private),C#,C++,Java默认都是私有的。
2,package访问权限很是特别,C++,C#,Java中都没有类似的概念
3,接口在OC称为协议,用的是protocol关键字修饰,(这让我感觉很蛋疼,interface这个关键字在OC里被用来定义类),哎,不知道OC里的协议能否声明协议变量?实现协议层上多态呢?OC 也支持协议的多继承,不知道支不支持类的多继承?
4,分类,分类是个非常帅的技术,和C#里的扩展方法精髓一致,二者神似,虽然我读的那本书把分类比作继承,但我觉得两者有着本质的不同,
5,在OC中似乎只支持实例方法与静态方法间的重载(这也很神奇,C#,C++,Java都不能这样重载,事实上OC中的这种方式应该不能算是重载,)
6,遗留问题,OC到底支持实例方法的重载不?那本书关于OC语法部分就这样讲完了,给我留下了一大堆的迷惑
|
|