代码改变世界

随笔分类 -  Object-C

Object C学习笔记26-文件管理(二)

2014-05-03 09:16 by 贺臣, 3463 阅读, 收藏, 编辑
摘要: 上一篇简单的介绍了如何获取文件属性,删除,拷贝文件等,本文继续记录Object C中文件IO操作。 一. 获取文件的执行主目录 在Object C中提供了一个方法NSHomeDirectory() 用于获得执行执行的主目录,使用如下代码测试:NSString *homePath=NSHo... 阅读全文

Object C学习笔记25-文件管理(一)

2014-05-02 23:46 by 贺臣, 3005 阅读, 收藏, 编辑
摘要: 在此篇文章中简单记录一下文件管理,在Object C中NSFileManager用于管理文件已经路径。在Object C中的文件路径可以是相对路径也可以是绝对路径。斜线“/”开头,斜线实际上就是一个目录,称为 根目录。字符(~)用作用户主目录的缩写。点“ . ”表示当前目录,两点“ .. ”表示... 阅读全文

Object C学习笔记24-关键字总结

2014-04-07 11:35 by 贺臣, 3534 阅读, 收藏, 编辑
摘要: 学习Object C也有段时间了,学习的过程中涉及到了很多Object C中的关键字,本文总结一下所涉及到的关键字以及基本语法。 1. #import #import 从system目录中查找头文件,不会检查当前目录。 #import "" 首先在当前目录中查找,如果未找到,则在Xcode设置的预处理程序搜索路径中查找文件。 #import 指令可以防止头文件被重复包含 2. typedef 用于给一个类型定义新名称 或 简化较为复杂的类型声明,可以参考文章 3.#define 用于宏定义预处理,可以参考文章 4. 定义类 *.h 用于定义类的... 阅读全文

Object C学习笔记23-继承,重写,重载

2014-04-05 15:35 by 贺臣, 4325 阅读, 收藏, 编辑
摘要: 前面的学习都一直在使用Object C对象,但是没有具体总结过Object C中的对象使用特性,这里简单总结一下。 一. 继承 在面向对象编程中,子类可以通过继承得到父类的可以继承的的属性和方法,在Object C中也同样如此。 先定义一个Person类,并且定义几个属性和一个方法:#import @interface Person : NSObject{ NSString *name; int age; NSArray *itmes;}@property (nonatomic,retain) NSString *name;@property (nonato... 阅读全文

Object C学习笔记22-#define 用法

2014-04-03 22:18 by 贺臣, 4065 阅读, 收藏, 编辑
摘要: 上一篇讲到了typedef 关键字的使用,可以参考文章 Object C 学习笔记--typedef用法。而在c中还有另外一个很重要的关键字#define. 一. #define 简介 在C中利用预处理代码,可以让你的代码变得更加具有可读性,更加符合个人的编码风格,这也是C的强大之处。#define可以实现代码的预处理,代码在编译之前会被提前处理。 二. 常量处理 语法: #define 常量名 产量值 #define声明主要用于将常量(或字符串)赋予有意义的名字,这个和.NET中的常量const比较的类似。#import #define NAME "abc"int ... 阅读全文

Object C学习笔记21-typedef用法

2014-04-03 17:58 by 贺臣, 5349 阅读, 收藏, 编辑
摘要: 在上一章的学习过程中遇到了一个关键字typedef,这个关键字是C语言中的关键字,因为Object C是C的扩展同样也是支持typedef的。 一. 基本作用 typedef是C中的关键字,它的主要作用是给一个数据类型定义一个新的名称,这些类型报告内部数据类型,比如int,char 还有自定义类型struct,enum等。 typedef一般有两个作用:(1) 给某种类型顶一个定义比较容易记的名字,相当于别名;(2)简化较为复杂的类型声明。 二. typedef的使用 1. 定义新类型 语法:typedef 类型 新类型#import typedef int... 阅读全文

Object C学习笔记20-结构体

2014-03-26 22:16 by 贺臣, 2525 阅读, 收藏, 编辑
摘要: 在学习Object C中的过程中,关于struct的资料貌似非常少,查阅了C方面的资料总结了一些学习心得! 一. 定义结构 结构体是一种数据类型的组合和数据抽象。结构体的定义语法如下: struct 结构体名称 { 类型 变量名; 类型 变量名; } 实例代码如下:struct student { char* name; enum sex sex; int age;};结构体的定义 上面代码定义了一个结构体student,其中有三个变量name,sex,age ,其中sex是一个枚举。student是一个标识符,也... 阅读全文

Object C学习笔记19-枚举

2014-03-23 21:09 by 贺臣, 2571 阅读, 收藏, 编辑
摘要: 一. 枚举类型 枚举类型是一个基本类型,不能再分为为任何其他的类型。在一般的编程语言中都有枚举(enum)这种数据结构类型。枚举类型主要用于将一个变量限定在特定的范围内。比如一周有七天,那么一周的值就限定在了七个值内。 二. 枚举的定义 enum 枚举名称 { 枚举值列表 } 案例1:enum Body{AB,CD,EF,HG}; 测试枚举值代码: enum Body a,b,c,d; a=AB; b=CD; c=EF; d=HG; NSLog(@"%d",a); N... 阅读全文

Object C学习笔记18-SEL,@ selector,Class,@class

2014-03-22 23:00 by 贺臣, 4132 阅读, 收藏, 编辑
摘要: 本章是对上一章>的一点补充,所以比较简单点。 一. SEL 类型 在上一篇介绍了几个方法,都只是介绍了其使用方式但是没有具体介绍参数:- (id)performSelector:(SEL)aSelector;- (id)performSelector:(SEL)aSelector withObject:(id)object;- (id)performSelector:(SEL)aSelector withObject:(id)object1 withObject:(id)object2;- (BOOL)respondsToSelector:(SEL)aSelector; 其中... 阅读全文

Object C学习笔记17-动态判断和选择器

2014-03-22 21:29 by 贺臣, 3050 阅读, 收藏, 编辑
摘要: 当时学习Object C的时被人鄙视了一顿,说使用.NET的思想来学Object C就是狗屎;不过也挺感谢这位仁兄的,这让我学习的时候更加的谨慎。今天的学习笔记主要记录Object C中的动态类型相关内容。 首先还是和.NET先对比一下,.NET中存在一个关键字var ,这个估计用过.NET的都知道,除非没有接触过3.0以上版本的。在.NET中能够使用var来声明任何类型的局部变量,负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,而且只能是局部变量.但是这里要注意的时var 并不是一个新的类型,只是一个关键字而已,在定义参数和返回值的时候都不能使用var. 在.net中还有... 阅读全文

Object C学习笔记16-委托(delegate)

2014-03-22 07:27 by 贺臣, 6839 阅读, 收藏, 编辑
摘要: 在.NET中都知道委托(delegate),通俗点的解释就是可以将方法作为一个参数传到另外一个方法中使用。 委托是一种引用方法的类型。一旦为委托分配了方法,委托将与该方法具有完全相同的行为。委托方法的使用可以像其他任何方法一样,具有参数和返回值。在Object C中也同样存在委托的概念,但是委托一般与协议(Protocol)同时使用,而且和.NET中的委托稍有区别 一. 定义委托(delegate)先定义一个协议(Protocol) 回顾一下上一篇所学的,先定义一个协议(Protocol)ProtocolName, 协议ProtocolName中定义了两个方法: first ,s... 阅读全文

Object C学习笔记15-协议(protocol)

2014-03-21 17:41 by 贺臣, 7588 阅读, 收藏, 编辑
摘要: 在.NET中有接口的概念,接口主要用于定义规范,定义一个接口关键字使用interface。而在Object C 中@interface是用于定义一个类的,这个和.NET中有点差别。在Object C中有一个协议(protocol) 的概念,这个和.NET中的interface类似。 协议(Protocol) 在列出的方法在本类中并没有相应实现,而是别的类来实现这些方法,而定义协议必须使用protocol关键字。 一. 如何定义protocol的定义 如何使用XCode新建一个协议.h 文件定义协议代码如下:#import @protocol ProtocolCom @requir... 阅读全文

Object C学习笔记14-分类(category)

2014-03-17 21:48 by 贺臣, 2518 阅读, 收藏, 编辑
摘要: 在.NET中有一个非常带劲的特性,那就是扩展方法.扩展方法使你能够向现有类型“添加”方法(包括你自定义的类型和对象噢),而无需创建新的派生类型、重新编译或以其他方式修改原始类型。扩展方法是一种特殊的静态方法,但是可以像扩展类型上的实例方法一样进行调用。 先看看.NET中扩展方法的定义和使用 public static class test { public static bool In(this object o, IEnumerable c) { foreach (object obj in c) ... 阅读全文

Object C学习笔记13-Dictionary字典

2014-03-09 22:07 by 贺臣, 6085 阅读, 收藏, 编辑
摘要: 通过Array数组和Set集合的学习和理解,可以想象得到Dictionary也分为两种情况了,那就是可变和不可变两种类型的。的确如此,在Object C中提供了两个字典类,分别为NSDictionary 和 NSMutableDictionary. 在.NET中我们也学习过Dictionary类,这个集合的存储方式是键值对的方式存储的。而且使用Dictionary查找元素也极为简单。 一 NSDictionary 不可变字典 (1) 初始化字典NSDictionary *dic=[NSDictionary dictionaryWithObject:@"hechen" for 阅读全文

Object C学习笔记12-集合

2014-03-08 17:25 by 贺臣, 2351 阅读, 收藏, 编辑
摘要: 这里讲到的集合是指Set集合,其实Array也是一种类型的集合。在Object C中提供了两个集合类NSSet和NSMutableSet。其实NSSet和NSArray性质一样,都是用于存储对象的。 然而Array集合和Set集合还是有区别的,主要是在于Set集合的搜索速度要比Array速度要快,NSArray和NSMutableArray 是一种有序集合,其存储的值在内存中是连续的,而NSSet和NSMutableSet是无需集合,在内存中的存储方式是不连续的,在NSSet,NSMutableSet采用了hash算法,你懂的! 一. NSSet集合 刚才上面也简单的介绍了一... 阅读全文

Object C学习笔记11-数组

2014-03-07 21:43 by 贺臣, 7689 阅读, 收藏, 编辑
摘要: 在Object C也提供了类似C#中的Array数组对象,在Object C中使用NSArray 来创建数组;但是在Object C中NSArray 只能存放对象类型的指针,不能存放int,char,double等基本数据类型。 一. 不可变数组对象 这个和之前的NSString有些类似,NSArray 能够创建不可变的数组对象。一旦初始化这个对象就不能动态的修改和增加这个数组。 (1)使用arrayWithObjects来初始化数组内容,参考如下代码:NSArray *items=[NSArray arrayWithObjects:@"abc",@"cdf&qu 阅读全文

Object C学习笔记10-静态方法和静态属性

2014-02-15 22:31 by 贺臣, 10297 阅读, 收藏, 编辑
摘要: 在.NET中我们静态使用的关键字static有着举足轻重的作用,static 方法可以不用实例化类实例就可以直接调用,static 属性也是如此。在Object C中也存在static关键字,今天的学习过程使用到了这个关键字,在这里记录一下static的使用。 在Object C的语法中声明后的static静态变量在其他类中是不能通过类名直接访问的,它的作用域只能是在声明的这个.m文件中。不过可以调用这个类的方法间接的修改这个静态变量的值。对于Object C中的类使用和定义在前面已经做过相应的记录,可以查看Object C学习笔记3-对象的使用和定义。 1. 静态属性 Object... 阅读全文

Object C学习笔记9-字符串NSMutableString

2014-02-15 13:11 by 贺臣, 4615 阅读, 收藏, 编辑
摘要: NSMutableString类继承自NSString,所以在NSString中的方法在NSMutableString都可以使用. NSMutableString和NSString的区别在于NSMutableString是动态的字符串,可以动态的添加,修改,删除等。在前面提到了就和.NET中的string和StringBuilder的区别一样。 1. 添加字符串 向字符串末尾添加字符串可以使用appendString方法和appendFormat方法。appendString方法主要用于向字符串末尾添加一个字符串;appendFormat 方法用于向字符串末尾添加多种类型的字符串,相当... 阅读全文

Object C学习笔记8-字符串NSString之二

2014-02-14 21:57 by 贺臣, 3373 阅读, 收藏, 编辑
摘要: 5. 字符串是否包含 hasPrefix 判断字符串是否以某个字符串开头 hasSuffix 判断字符串是否以某个字符串结尾 NSString *str1=@"Object C学习正在进行中.... LOVE"; if([str1 hasPrefix:@"Object"]){ NSLog(@"字符串:%@是以%@开头",str1,@"Object"); } if([str1 hasSuffix:@"LOVE"]){ NSLog(@"字符串:%@是以%@结尾",str1,@.. 阅读全文

Object C学习笔记7-字符串NSString之一

2014-02-13 22:42 by 贺臣, 5300 阅读, 收藏, 编辑
摘要: 在Object C中存在两个类用于操作字符串,NSString和NSMutableString;NSString在赋值之后不能修改其内容和长度,而NSMutableString可以动态的修改字符串内容和长度,其主要区别就和.NET 中的string与StringBuilder之间的区别。 1. 定义NSString字符串 在Object C中NSString是一个对象类型,其有多种定义方式:NSString *str1=@"令狐聪"; NSString *str2=[NSString stringWithFormat:@"名称: %@ 性别:%s 年龄... 阅读全文


作者:情缘
出处:http://www.cnblogs.com/qingyuan/
关于作者:从事仓库,生产软件方面的开发,在项目管理以及企业经营方面寻求发展之路
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
联系方式: 个人QQ  821865130 ; 仓储技术QQ群 88718955,142050808 ;
吉特仓储管理系统 开源地址: https://github.com/hechenqingyuan/gitwms

点击右上角即可分享
微信分享提示