iOS Foundation 框架基类

太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es)

本文遵循“署名-非商业用途-保持一致”创作公用协议

转载请保留此句:太阳火神的漂亮人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。

基类
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

这三个类,应该说都是为集合而生,NSNull 是为了 nil 能作为集合的元素。NSValue 是为了能使标量能作为集合元素;而NSUUID。则是要可以作为集合元素的自己定义对象必须实现的对象是否相等的判定方法所返回的标识该对象的唯一值,当没有值可用时,可使用 UUID来确保唯一。只是 NSUUID 也是取消的设备唯一编号的一种替代方案,但我觉得它并不一定专为它而生!

接下来。先研究 NSObject 这个绝大多数类的基类以及对应的协议。这些协议方法对日后的使用也非常关键,该基类将其派生类与系统执行时有机地联接起来,这样 iOS 强大提供将在手,并能掌握基本的执行机制的情况下,有效延长。转,上天堂,下可提出。

1、NSObject 基类及相关协议

iOS Foundation 框架基类的更多相关文章

  1. iOS Foundation 框架概述文档:常量、数据类型、框架、函数、公布声明

    iOS Foundation 框架概述文档:常量.数据类型.框架.函数.公布声明 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业 ...

  2. iOS Foundation框架 -2.常用集合类简单总结

    Foundation框架中常用的类有:NSString.NSArray.NSSet.NSDictionary 以及它们对应的子类 NSMutableString.NSMutableArray.NSMu ...

  3. iOS Foundation框架简介 -1.常用结构体的用法和输出

    1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...

  4. iOS Foundation框架 -1.常用结构体的用法和输出

    1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...

  5. iOS学习——iOS 整体框架及类继承框架图

    整理自:IOS 整体框架类图值得收藏 一 整体框架 在iOS开发过程中,对iOS的整理框架的了解和学习是必不可少的一个环节,今天我们就好好来了解一下iOS的整体框架.首先贴一个关于iOS的框架介绍:i ...

  6. iOS控制器之基类设计

    题记 在进入新公司后.经过这一个月的重构项目,终于把项目做到了个人相对满意的程度(还有一种不满意的叫老板的需求,提过多次意见也没用= =!).在这次重构中按照以前的思路设计出了个人觉得比较适用的一个基 ...

  7. Objective-C:Foundation框架-常用类-NSObject

    NSObject是所有类的基类,其常见用法有: #import <Foundation/Foundation.h> @interface Person : NSObject - (void ...

  8. Objective-C:Foundation框架-常用类-NSString全解

    Foundation框架中常用的类有字符串.集合.字典等,这里介绍字符串NSString.本文分别介绍了NSString的创建.从文件里读取NSString字符串.通过函数改变外部的NSString变 ...

  9. iOS Foundation框架 -3.利用NSNumber和NSValue将非OC对象类型数据存放到集合

    1.Foundation框架中提供了很多的集合类如:NSArray,NSMutableArray,NSSet,NSMutableSet,NSDictionary,NSMutableDictionary ...

随机推荐

  1. Java经典面试题及详解

    Java基础方面:   1.作用域public,private,protected,以及不写时的区别 答:区别如下:  作用域           当前类       同一package       ...

  2. Android显示GIF图片

    今天我们研究一下怎样在Android手机上显示GIF动态图片 首先须要在src文件夹下新建一个自己定义的View.代码例如以下: </pre><pre name="code ...

  3. ubuntu12.04下搭建ftpserver

    楼主想把同学硬盘里面的200多G电影共享给实验室的小伙伴们看,就打算在内网server上搭建一个ftp的server. 1.安装ftp 首先在终端下键入例如以下内容,安装ftpserver: sudo ...

  4. Scriptcase价格调整(五折销售)

    芬兰诺基亚!芬兰诺基亚!最大手机公司倒闭了!王八蛋老板埃洛普,吃喝嫖赌欠下了3.5个亿,带着他的小姨子跑了!我们没有办法,拿着手机抵工资!原价都是一千多.两千多.三千多的手机,统统二百块!统统二百块! ...

  5. C++ STL copy函数效率分析

    在C++编程中,经常会配到数据的拷贝,如数组之间元素的拷贝,一般的人可能都会用for循环逐个元素进行拷贝,在数据量不大的情况下还可以,如果数据量比较大,那么效率会比较地下.而STL中就提供了一个专门用 ...

  6. 浅谈 PHP 神盾的解密过程

    原文:浅谈 PHP 神盾的解密过程 前些日子一个朋友丢了个shell给我,让我帮忙解密,打开源码看了下写着是 “神盾加密” , 牛逼闪闪的样子.百度下发现神盾是个很古老的东西,最后一次更新是在 201 ...

  7. [Cocos2d-x]创建项目

    从cocos2d-x 2.1.4之后,就不提供工程项目模板的安装文件了,我们只能手工修改以前的安装文件,让它连接最新的工程,但是这样很麻烦. 我们可以使用python命令创建cocos2d-x项目 步 ...

  8. POJ 1325 ZOJ 1364 最小覆盖点集

    题意:有A,B两台机器, 机器A 有 n个模式(0, 1, 2....n-1),同样机器B有m个模式, 两个机器一开始的模式都为0,有k个作业(id,x,y) 表示作业编号id, 该作业必须在A机器在 ...

  9. 【ThinkingInC++】52、函数内部的静态变量

    /** * 书本:[ThinkingInC++] * 功能:函数内部的静态变量 * 时间:2014年9月17日18:06:33 * 作者:cutter_point */ #include " ...

  10. jquery.ui.accordion的修改(支持展开多个)

    原文:jquery.ui.accordion的修改(支持展开多个) 背景:原jquery.ui.accordion插件,最多只能展开一个,不能展开多个,后来在网上找到了一个基于它的一个修改版(http ...