标签:android style blog class tar ext
iOS Foundation 框架基类
太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)
本文遵循“署名-非商业用途-保持一致”创作公用协议
基类 | ||
Title | Topic | Date |
NSObject Class Reference | Data Types & Collections | Minor Change |
NSObject Protocol Reference | Data Types & Collections | Minor Change |
NSNull Class Reference | Data Types & Collections | Minor Change |
NSValue Class Reference | Data Types & Collections | Minor Change |
NSUUID Class Reference | Data Types & Collections | Minor Change |
NSCopying Protocol Reference | - | Minor Change |
NSMutableCopying Protocol Reference | - | Minor Change |
NSMethodSignature Class Reference | Data Types & Collections | Minor Change |
Objective-C Runtime Reference | Objective-C | Minor Change |
Advanced Memory Management Programming Guide | Performance | Minor Change |
NSAutoreleasePool Class Reference | - | Minor Change |
首先我们了解一下,面向对象与基于对象,下面引用一段别人博客的阐述:
“面向对象大家都很熟悉,可是基于对象就不一定了。两个听起来好象是同一回事,而事实上它们却千差万别。基于对象是指:我们采用对象封装技术,将数据和操作捆绑在一起,但是并没有合理地使用多态、继承等面向对象技术进行软件设计。其中的“没有合理使用”这一修饰非常重要,它道出了面向对象和基于对象的本质区别。
虽然,听起来面向对象我们很是熟悉,但就我的观察,很多以前从事C程序开发的人,当他采用面向对象的编程语言(如C++)进行开发时,写出来的程序却是基于对象的。或者说他们是采用面向对象的语言编写面向过程的程序!”
引用这段话,应原作者要求,需贴上下面的转载说明:
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://yunli.blog.51cto.com/831344/184846
在软件设计领域中,“面向对象”是专指在程序设计中采用封装、继承、多态等设计方法。
这其中提到的“继承”,涉及到基类和派生类,
基类:通过继承机制,可以利用已有的数据类型来定义新的数据类型。所定义的新的数据类型不仅拥有新定义的成员,而且还同时拥有旧的成员。我们称已存在的用来派生新类的类为父类,也就是基类。
这样看来,确实有必要,在了解 iOS 强大功能之前,先掌握基类提供了哪些功能,这样便可上下自如,游刃有余。
上面列表中的内容,大体可以分类几部分,一是 NSObject 基类相关的,一是采纳的基类相关协议,再就是运行时及反射相关功能,最后就是内存管理。
而其中有三个,应属于集合部分,但考虑到仅是准备阶段,那么就放到基类部分来研究为好:
NSNull Class Reference | Data Types & Collections | Minor Change |
NSValue Class Reference | Data Types & Collections | Minor Change |
NSUUID Class Reference | Data Types & Collections | Minor Change |
接下来,先研究 NSObject 这个绝大多数类的基类以及相应的协议,这些协议方法对日后的使用也很关键,该基类将其派生类与系统运行时有机地联接起来,这样 iOS 提供的强大功能便在掌握之中,并可在掌握其基本运行机理的情况下,有效地进行扩展。真可谓,上可升天,下可遁地。
1、NSObject 基类及相关协议
iOS Foundation 框架基类,布布扣,bubuko.com
标签:android style blog class tar ext
原文地址:http://blog.csdn.net/opengl_es/article/details/25244599