20160126深入浅出obc知识点整理
1.错误域Error Domain
NSMachErrorDomain:系统内核错误
NSPOSIXErrorDomain:系统错误
NSOSStatusErrorDomian:MacOS9之前的错误或者Carbon框架错误
NSCocoaErrorDomain:cocoa框架错误
2.本地化错误描述
(1)NSUnderlyingErrorKey
NSDictionary *userInfo = [error userInfo];
NSString *errorDesc = nil;
//检查有没有"NSUnderlyingErrorKey"可供使用
if(userInfo && [userInfo objectForKey:NSUnderlyingErrorKey]){
NSError *underlyingError = [userInfo objectForKey:NSUnderlyingErrorKey];
if(underlyingError){
errorDesc = [underlyingError localizedDescription];
}
else{
errorDesc = [error localizedDescription];
}
}
else{
errorDesc = [error localizedDescription];
}
(2)localized Description
NSError *errorInfo = nil;
//假设在操作系统的根目录上放一个"test.rtf"文件,strTest拿到@"/test.rf"的内容
NSString *strTest = [NSString stringWithContentsOfFile:@"/test.rf"
encoding:NSUTF8StringEncoding
ettor:&errorInfo];
if(!strTest){
if(!errorInfo){
NSLog(@"An error occurred: %@" , [errorInfo localizedDescription]);
}else{
NSLog(@"An unknow error occurred" );
}
}
3.输出当前的函数
%s __FUNCTION__
4.单例
share*****
default*****
5.ARC
weak和strong代替assign.retain.copy
6.KVC
valueForKeyPath 取
setValue: forkey: 设置
7.KVO
[self addObserver:self
forKeyPath:@"datasrc"
options:*****
context:@"testContent"];
20160126深入浅出obc知识点整理的更多相关文章
- ACM个人零散知识点整理
ACM个人零散知识点整理 杂项: 1.输入输出外挂 //读入优化 int 整数 inline int read(){ int x=0,f=1; char ch=getchar(); while(ch& ...
- Android 零散知识点整理
Android 零散知识点整理 为什么Android的更新试图操作必须在主线程中进行? 这是因为Android系统中的视图组件并不是线程安全的.通常应该让主线程负责创建.显示和更新UI,启动子线程,停 ...
- vue前端面试题知识点整理
vue前端面试题知识点整理 1. 说一下Vue的双向绑定数据的原理 vue 实现数据双向绑定主要是:采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty() 来劫 ...
- kafka知识点整理总结
kafka知识点整理总结 只不过是敷衍 2017-11-22 21:39:59 kafka知识点整理总结,以备不时之需. 为什么要使用消息系统: 解耦 并行 异步通信:想向队列中放入多少消息就放多少, ...
- JSP页面开发知识点整理
刚学JSP页面开发,把知识点整理一下. ----------------------------------------------------------------------- JSP语法htt ...
- JS知识点整理(二)
前言 这是对平时的一些读书笔记和理解进行整理的第二部分,第一部分请前往:JS知识点整理(一).本文包含一些易混淆.遗漏的知识点,也会配上一些例子,也许不是很完整,也许还会有点杂,但也许会有你需要的,后 ...
- css入门知识点整理
css入门知识点整理 不要嘲笑我这个蒟蒻..例子来源:w3school css其实就分为两个东西,一个是选择器,另外一个是声明.声明定义了某个对象的属性的值,这都是html的内容.重点要关注的是选择器 ...
- activity生命周期知识点整理
activity生命周期知识点整理 Activity: 是一个应用组件,用户可与其提供的屏幕进行交互.窗口通常会充满屏幕,但也可以小于屏幕并浮动在其他窗口之上. 一个activity的什么周期: 启动 ...
- 【Android 面试基础知识点整理】
针对Android面试中常见的一些知识点整理,Max 仅仅是个搬运工.感谢本文中引用文章的各位作者,给大家分享了这么多优秀文章.对于当中的解析,是原作者个人见解,有错误和不准确的地方,也请大家积极指正 ...
随机推荐
- HDU 5597 GTW likes function 打表
GTW likes function 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5596 Description Now you are give ...
- hdu 1257 小希的迷宫 并查集
小希的迷宫 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1272 D ...
- cdoj 1150 排名表 拓扑排序
排名表 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1150 Descrip ...
- JavaScript Modules
One of the first challenges developers new to JavaScript who are building large applications will ha ...
- 【JavsScript】XMLHttpRequest Level 2 使用指南
XMLHttpRequest是一个浏览器接口,使得Javascript可以进行HTTP(S)通信. 最早,微软在IE 5引进了这个接口.因为它太有用,其他浏览器也模仿部署了,ajax操作因此得以诞生. ...
- [Angular 2] Move and Delete Angular 2 Components After Creation
After the original order is set, you can still leverage methods on the Angular 2 ViewContainer to re ...
- VirtualBox从USB设备(PE)启动
cmd中执行 VBoxManage internalcommands createrawvmdk -filename E:\usb.vmdk -rawdisk \\.\PhysicalDrive1 - ...
- Js 数组——filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()
filter(): 语法: var filteredArray = array.filter(callback[, thisObject]); 参数说明: callback: 要对每个数组元素执行 ...
- 显式参数 VS 隐式参数
尽量使用显示参数,而不是隐式参数,看下面实例代码. 示例1采用显示参数,示例2采用隐式参数.对于一个不熟悉MonitorManager内部构造的调用者来说,在构造MonitorManager的时候,对 ...
- 关于设置ScrollView的滚动条为隐藏的方法
要实现ScrollView滚动条的隐藏,有两种方法, 一种是在XML的ScrollView布局中加入属性android:scrollbars="none" 另一种则是在代码中获取S ...