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. Linux Socket编程注意事项

    Socket API 是网络应用程序开发中实际应用的标准 API.虽然该 API 简单.可是开发新手可能会经历一些常见的问题.本文识别一些最常见的隐患并向您显示怎样避免它们. 隐患 1.忽略返回状态 ...

  2. Java线程状态及Thread类中的主要方法

    要想实现多线程,就必须在主线程中创建新的线程对象. 不论什么线程一般具有5种状态,即创建,就绪,执行,堵塞,终止. 创建状态: 在程序中用构造方法创建了一个线程对象后,新的线程对象便处于新建状态,此时 ...

  3. 重拾linux

    重拾linux 起因 因为想重拾起linux,同时需要用docker起几个镜像,用来学习网络知识.本来想直接去阿里云上买,后来一想自己机器上,起一个linux是个不错的选择,毕竟不花钱! 还可以用来做 ...

  4. IE与FF脚本兼容性问题

    (1) window.event: 表示当前的事件对象,IE有这个对象,FF没有,FF通过给事件处理函数传递事件对象 (2) 获取事件源 IE用srcElement获取事件源,而FF用target获取 ...

  5. ArcGIS多面体(multipatch)解析——引

    多面体(multipatch)结构在ArcGIS数据结构中是与点.线.面平行的一种数据结构,对于ArcGIS三维来说是一个很核心的结构,有了它,ArcGIS平台才可以灵活的描述规则和不规则的三维实体. ...

  6. syslog-ng 3.4.3 发布,强烈建议升级 - 开源中国社区

    syslog-ng 3.4.3 发布,强烈建议升级 - 开源中国社区 syslog-ng 3.4.3 发布,强烈建议升级    oschina 发布于: 2013年08月16日 (2评)    分享到 ...

  7. contiki etimer部分

    1.前言     contiki是一款小型开源,易于移植的多任务操作系统,专门为无线传感网设计,适合内存受限制的网络系统.国内的研究和应用还处于初级阶段,甚至还不知道这个contiki如何发音,也没有 ...

  8. 持续集成环境Jenkins的搭建和使用

    这几天试着搭了个持续集成环境,我使用的是Jenkins,它的前身是Hadson,由于被Oracle收购了,所以换个名字继续开源,这个有点像MySQL. 持续集成总是跟敏捷开发什么的搞在一起,显得非常高 ...

  9. poj2411(状压dp)

    题目链接:http://poj.org/problem?id=2411 题意:由1*2 的矩形通过组合拼成大矩形,求拼成指定的大矩形有几种拼法. 分析:如果是横着的就定义11,如果竖着的定义为竖着的0 ...

  10. java中浮点数的比较(double, float)(转)

    问题的提出:如果我们编译运行下面这个程序会看到什么? public static void main(String args[]){ System.out.println(0.05+0.01); Sy ...