OC 知识:Foundation 框架及相关类详尽总结
本文用来介绍Foundation框架的相关知识,以及Foundation框架所提供类的相关知识总结。
1. 框架介绍
框架是由很多类、方法、函数和文档按照一定的逻辑组织起来的集合,以使开发程序变得更加容易。在OS X系统下有100多个框架,这些框架可以用来开发应用程序。
2. Foundation框架介绍
Foundation框架是一个由上百个函数和类所构成的集合,它为Cocoa应用程序定义了一个基本功能层。不仅如此,Foundation框架还提供了一些范例,定义了一致性的约定,包括内存管理及对象集的访问。这些约定使用同样的机制处理不同类型的对象,令开发者编程时更有效更高效。
- Foundation框架中的类都是以NS为前缀的
- Foundation框架前缀NS的由来
- 乔布斯于1976年创立苹果公司
- 乔布斯于1985年离开苹果公司,创立NeXT公司,开发了Next Step操作系统
- 在开发Next Step操作系统过程中产生了Foundation框架
- 1997年,苹果公司收购NeXT公司,乔布斯重返苹果公司(Mac系统就是基于Next Step系统)
- 2007年,苹果公司发布了iOS系统(iOS系统基于Mac系统)
- "NS"其实指的是乔布斯创建的NeXT这个公司。
3. Foundation框架中的类
- Foundation框架包括:根对象类(NSObject)、表示基本数据类型的类(如字符串和字节数组)、存储其他对象的集合类、表述系统信息和集合的类。
- 根对象类(NSObject及NSCopying协议一起)定义了基本的对象属性和行为。
- Foundation框架提供了很多基本类型,包括数字(NSNumber)和字符串(NSString)。还提供了一些表述其他对象的类,如数组(NSArray)和字典集合(NSDictionary)类。
- Foundation框架提供了访问核心操作的类,如锁、线程和计时器。这些服务共同配合,为应用程序营造了一个健壮的环境。
- Foundation提供了管理对象的功能,可以在分布环境中创建,销毁,保存及共享对象。
4. 我们如何使用Foundation框架
可以使用 #import<Foundation/Foundation.h> 导入Foundation框架,因为Foundation.h文件实际上导入其他所有Foundation框架中的头文件
5. Foundation框架相关类总结
下边是对Foundation框架中一些类的相关知识详细总结
- 字符串类:
- NSString和NSMutableString:不可变字符串和可变字符串
- Foundation框架之字符串类总结
- 数组类:
- NSArray和NSMutableArray:不可变字节数组和可变字节数组
- Foundation框架之数组类总结
- 字典类:
- NSDicitonary和NSMutableDictnary:不可变字典和可变字典
- Foundation框架之字典类总结
- 数字类:
- NSNumber:数字对象
- Foundation框架之数字、结构体、日期、文件类总结
- 结构体类:
- CGPoint:定义矩形原点坐标
- CGSize:定义矩形尺寸的结构体
- CGRect:同时定义矩形原点和尺寸的结构体
- NSRange:描述位置和大小范围的结构体
- NSValue:将结构体转换为对象的类
- Foundation框架之数字、结构体、日期、文件类总结
- 日期类:
- NSDate和NSCalendar:表示时间和日期的类
- Foundation框架之数字、结构体、日期、文件类总结
- 文件类:
- NSFileManager:管理文件系统的类
- Foundation框架之数字、结构体、日期、文件类总结
作者:行走少年郎
OC 知识:Foundation 框架及相关类详尽总结的更多相关文章
- OC - 7.Foundation框架的简单介绍
OC语言-07-OC语言-Foundation框架 结构体 NSRange/CGRange 用来表示一个元素在另一个元素中的范围,NSRange等价于CGRange 包含两个属性: NSUInte ...
- OC中Foundation框架之NSString、NSMutableString
创建方式 )直接赋值 NSString *str =@"abc"; )创建对象 NSString *str2 = [[NSString alloc]init]; str2 =@&q ...
- OC中Foundation框架
框架的概念 框架是由许多类.方法.函数.文档按照一定的逻辑组织起来的组合,以便使研发程序变的更容易在OS X下地Mac操作系统中大约有80个框架为所有程序开发奠定基础的框架称为Foundation框架 ...
- 黑马程序员——OC语言Foundation框架 结构体
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)结构体 NSRange(location length) NSPoi ...
- OC中Foundation框架之NSArray、NSMutableArray
NSArray概述 NSArray是OC中的数组类 NSArray特点 )只能存放任意OC对象,并且是有顺序的 )不能存放非OC对象,比如int/float/double/char/enum/stru ...
- 黑马程序员——OC语言Foundation框架 (2) NSArray NSSet NSDictionary\NSMutableDictionary
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)NSArray 1>NSArray :不可变数组 ①创建方法 ...
- iOS Foundation框架 -4.NSDate类的简单用法
NSDate为日期时间类对象,简单操作: 注意:直接NSLog输出NSDate对象,默认是以0时区为标准,因此会比北京时间少8小时 1.将Date格式转换为自定义格式的字符串格式 // 自定义Date ...
- OC中Foundation框架之NSDictionary、NSMutableDictionary
NSDictionary概述 NSDictionary的作用类似:通过一个key ,就能找到对应的value 同样 NSDictionary是不可变的,一旦初始化完毕,里面的内容就无法修改 NSDic ...
- 黑马程序员——OC语言Foundation框架 NSArray NSSet NSDictionary\NSMutableDictionary
Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一) NSNumber 将各种基本数据类型包装成NSNumber对象 @ ...
随机推荐
- java获取本月第一天和最后一天
public class CalendarTest { public static void main(String[] args) { // 获取当前年份.月份.日期 Calendar cale = ...
- linux 权限管理命令chown、chgrp、umask、linux新建文件或目录的默认权限755
chown /bin/chownchown [用户] [文件或目录] 改变文件或目录的所有者只有root可以改变文件或目录的所有者 root用户:mkdir /tmptouch /tmp/test.f ...
- lambda 表达式的由来
相关技术点:函数指针.C#委托.匿名方法.lambda表达式 谈到lambda表达式,首先从委托讲起, 委托是持有一个或者多个方法的对象,这个特性有点像C中的函数指针,可以指向不同的方法,下面的例子是 ...
- iOS设计模式 - 模板
iOS设计模式 - 模板 原理图 说明 定义一个操作中的算法的骨架,而将步骤延迟到子类中.模板方法使得子类可以不改变一个算法的结构即可重定义算法的某些特定步骤. 源码 https://github.c ...
- php 代码编写规范
1 编写目的为了更好的提高技术部的工作效率,保证开发的有效性和合理性,并可最大程度的提高程序代码的可读性和可重复利用性,指定此规范.开发团队根据自己的实际情况,可以对本规范进行补充或裁减. 2 整体要 ...
- Bootstrap后台管理框架
B-JUI http://www.xknaan.com/ B-JUI 前端框架,基于Bootstrap的Jquery UI框架,核心思想脱胎于DWZ(j-ui). BJUI_SSM_DEMO 基于 ...
- Hadoop HBase概念学习系列之模式设计(十)
Hbase与RDBMS的区别在于:HBase的Cell(每条数据记录中的数据项)是具有版本描述的(versioned),行是有序的,列(qualifier)在所属列簇(Column familie ...
- Mycat分片规则详解
1.分片枚举 通过在配置文件中配置可能的枚举 id,自己配置分片,本规则适用于特定的场景,比如有些业务需要按照省份或区县来做保存,而全国省份区县固定的,这类业务使用本条规则,配置如下: <tab ...
- September 24th 2017 Week 39th Sunday
To live is the rarest thing in the world. Most people exist. That is all. 生活是世间最罕见的事情:生存,却是世间最常见的事情: ...
- HTML5 JS 实现浏览器全屏(F11的效果)
项目中有需要使用JS来控制浏览器全屏的方法 DEMO地址: http://zhongxia245.github.io/demo/js2fullpanel.html function fullScree ...