oc
文章平均质量分 80
iteye_9512
这个作者很懒,什么都没留下…
展开
-
十分钟让你明白Objective-C的语法(和Java、C++的对比) .
很多想开发iOS,或者正在开发iOS的程序员以前都做过Java或者C++,当第一次看到Objective-C的代码时都会头疼,Objective-C的代码在语法上和Java, C++有着很大的区别,有的同学会感觉像是看天书一样。不过,语言都是相通的,有很多共性。下面列出Objective-C语言的语法和Java,C++的对比,这样你就会很容易Objective-C的语法是怎么回事了。 先目睹...原创 2013-01-05 09:43:46 · 104 阅读 · 0 评论 -
Objective-C语法之Category的使用 .
论一个类设计的如何完美,都不可避免的会遇到没有预测到的需求,那怎么扩展现有的类呢?当然,继承是个不错的选择。但是Objective-C提供了一种特别的方式来扩展类,叫Catagory,可以动态的为已经存在的类添加新的行为。这样可以保证类的原原来的基础上,较小的改动就可以增加需要的功能。使用Category对类进行扩展时,不需要访问其源代码,也不需要创建子类,这样我们可以扩展系统提供的类。Categ...原创 2013-01-08 13:05:11 · 70 阅读 · 0 评论 -
Objective-C语法之代码块(block)的使用 .
代码块本质上是和其他变量类似。不同的是,代码块存储的数据是一个函数体。使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值。 脱字符(^)是块的语法标记。按照我们熟悉的参数语法规约所定义的返回值以及块的主体(也就是可以执行的代码)。下图是如何把块变量赋值给一个变量的语法讲解: [img] [img]http://dl.iteye.com/upload/attach...原创 2013-01-08 12:55:32 · 77 阅读 · 0 评论 -
Objective-C语法之KVO的使用 .
简介: 上篇我们讲到了KVC,这篇我们学习KVO,全名为:Key Value Observing,直译为:基于键值的观察者。 那它有什么用呢?KVO主要用于视图交互方面,比如界面的某些数据变化了,界面的显示也跟着需要变化,那就要建立数据和界面的关联。 ObjC中提供的KVO就是解决这种问题的。以下用显示页面观察学生的课程名称变化的例子来说明KVO的使用。 学生类命名为:Stud...原创 2013-01-08 12:54:59 · 90 阅读 · 0 评论 -
Objective-C语法之KVC的使用 .
除了一般的赋值和取值的方法,我们还可以用Key-Value-Coding(KVC)键值编码来访问你要存取的类的属性。 下图来自苹果官网: [img] [img]http://dl.iteye.com/upload/attachment/0078/7092/0cb2df5f-c8ff-35ac-992c-aa87036706e0.jpg[/img] [/img] 如何使...原创 2013-01-06 10:10:09 · 95 阅读 · 0 评论 -
Objective-C语法之NSSet和NSMutableSet .
NSSet和NSMutableSet是无序的, 但是它保证数据的唯一性。当插入相同的数据时,不会有任何效果。从内部实现来说是hash表,所以可以常数时间内查找一个数据。 [img] [img]http://dl.iteye.com/upload/attachment/0078/7090/b7a8dc66-4c2a-34f6-add3-eb3e87e9a6e1.jpg[/img] [/im...原创 2013-01-06 10:09:40 · 78 阅读 · 0 评论 -
Objective-C语法之NSDictionary和NSMutableDictionary .
Java有Map,可以把数据以键值对的形式储存起来,取值的时候通过key就可以直接拿到对应的值,方便快捷。在Objective-C语言中,词典就是做这样的事情的,和NSArray一样,一个词典对象也能保存不同类型的值,词典也分别有不可变词典和可变的词典(NSDictionary与NSMutableDictionary),前者是线程安全的,后者不是 。 [img] [img]http://d...原创 2013-01-06 10:09:18 · 89 阅读 · 0 评论 -
Objective-C语法之NSArray和NSMutableArray .
Objective-C的数组比C++,Java的数组强大在于,NSArray保存的对象可以是不同的对象。但只能保存对象,int ,char,double等基本数据类型不能直接保存,需要通过转换成对象才能加入数组。 [img] [img]http://dl.iteye.com/upload/attachment/0078/7085/a5d69f7e-a0fc-3e4c-aea9-11cc0c...原创 2013-01-06 10:08:48 · 66 阅读 · 0 评论 -
Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id)等 .
对象在运行时获取其类型的能力称为内省。内省可以有多种方法实现。 判断对象类型 -(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例 -(BOOL) isMemberOfClass: classObj 判断是否是这个类的实例 ps:本篇新建的类主要用于熟悉本篇内容设计,未考虑内存管理因素。 我们试试这两个方法的使用。 ...原创 2013-01-06 10:08:22 · 76 阅读 · 0 评论 -
Objective-C语法之异常处理 .
Objective-C的异常比较像Java的异常处理,也有@finally的处理,不管异常是否捕获都都要执行。 异常处理捕获的语法: [code="java"] @try { } @catch (NSException *exception) { } @finally { }[/...原创 2013-01-05 09:45:59 · 123 阅读 · 0 评论 -
Objective-C语法之类和对象 .
1、类和方法 下图中是一段的类声明的语法展示,声明了一个叫做 MyClass 的类,它继承于根类:NSObject。(根类可以被所有的其他类直接或间接继承。) [img] [img]http://dl.iteye.com/upload/attachment/0078/7078/ad5cc0f6-c51b-3232-addb-b15f8c1c9493.png[/img] [/img]...原创 2013-01-05 09:45:29 · 110 阅读 · 0 评论 -
Objective-C语法之字符串NSString .
[code="java"][/code]Objective-C里核心的处理字符串的类就是NSString和NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理。这两个类的最主要的区别是NSString创建赋值后不能动态修改长度和内容,除非给重新赋值。而NSMutableString类似与链表的,在创建赋值后可以进行修改长度,插入,删除等操作。 ...原创 2013-01-05 09:45:04 · 84 阅读 · 0 评论 -
Objective-C语法之基本数据类型 .
本篇博客主要介绍基本数据类型的长度,基本数据类型在Oc的数组中如何时候,还有其他数据类型的相互转换等。 为了演示基本数据类型的例子,我们新建一个iPhone项目类做例子 1、新建项目 为了方便,我们新建一个Single View Application 。 [img] [img]http://dl.iteye.com/upload/attachment/007...原创 2013-01-05 09:44:10 · 99 阅读 · 0 评论 -
【IOS开发】全局变量之单例
在开发中用单例存储项目中通用的全局变量是非常方便的,用法: SingleSample.h中, [code="java"]#import @interface SingleSample : NSObject @property (nonatomic, retain) NSString *user; + (SingleSample *)s...原创 2013-01-24 13:47:40 · 193 阅读 · 0 评论