![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Objective-c
文章平均质量分 80
zwcshy
只要出发,就会到达。
展开
-
1、Objective-C语法之基本数据类型
本篇博客主要介绍基本数据类型的长度,基本数据类型在Oc的数组中如何使用,还有其他数据类型的相互转换等。 为了演示基本数据类型的例子,我们新建一个iPhone项目类做例子 1、新建项目 为了方便,我们新建一个Single View Application 。 输入项目名称 BaseType Product Name: 指产品名称 ,类似于项目名称。 Comp原创 2014-06-19 12:40:24 · 547 阅读 · 0 评论 -
10、Objective-C语法之NSArray和NSMutableArray
Objective-C的数组比C++,Java的数组强大在于,NSArray保存的对象可以是不同的对象。但只能保存对象,int ,char,double等基本数据类型不能直接保存,需要通过转换成对象才能加入数组。 1、NSArray 不可变数组 [array count] : 数组的长度。 [array objectAtIndex 0]: 传入数组脚标的id 得到数据对象。转载 2014-06-19 12:59:23 · 477 阅读 · 0 评论 -
9、Objective-C语法之内存管理
1、Objective-C内存管理简介: Objective-C需要自己考虑内存的管理,对于从Java, C#等语言转向Objective-C平台的程序员新手来说,这是个很大的挑战。幸运的是,如果熟悉了Objective-C的内存管理机制,手工管理内存也没有那么可怕。 Objective-C的内存管理介于C/C++和Java C#直接,不像C/C++语言内存管理全部需要程序员一手包办转载 2014-06-19 12:58:03 · 468 阅读 · 0 评论 -
5、Objective-C语法之代码块(block)的使用
代码块本质上是和其他变量类似。不同的是,代码块存储的数据是一个函数体。使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值。 脱字符(^)是块的语法标记。按照我们熟悉的参数语法规约所定义的返回值以及块的主体(也就是可以执行的代码)。下图是如何把块变量赋值给一个变量的语法讲解: 按照调用函数的方式调用块对象变量就可以了: int result = myB转载 2014-06-19 12:49:05 · 512 阅读 · 0 评论 -
4、Objective-C语法之Category的使用
无论一个类设计的如何完美,都不可避免的会遇到没有预测到的需求,那怎么扩展现有的类呢?当然,继承是个不错的选择。但是Objective-C提供了一种特别的方式来扩展类,叫Catagory,可以动态的为已经存在的类添加新的行为。这样可以保证类的原原来的基础上,较小的改动就可以增加需要的功能。使用Category对类进行扩展时,不需要访问其源代码,也不需要创建子类,这样我们可以扩展系统提供的类。Cate转载 2014-06-19 12:46:10 · 353 阅读 · 0 评论 -
15、Objective-C语法之KVO的使用
简介: 上篇我们讲到了KVC,这篇我们学习KVO,全名为:Key Value Observing,直译为:基于键值的观察者。 那它有什么用呢?KVO主要用于视图交互方面,比如界面的某些数据变化了,界面的显示也跟着需要变化,那就要建立数据和界面的关联。 ObjC中提供的KVO就是解决这种问题的。以下用显示页面观察学生的课程名称变化的例子来说明KVO的使用。 学生类命名为:St转载 2014-06-19 13:07:10 · 277 阅读 · 0 评论 -
14、Objective-C语法之KVC使用
除了一般的赋值和取值的方法,我们还可以用Key-Value-Coding(KVC)键值编码来访问你要存取的类的属性。 下图来自苹果官网: 如何使用KVC存取对象属性呢?看个示例 1、使用KVC 定义一个Student类,继承于NSObject。 .h文件 #import @interface Student : NSObject {转载 2014-06-19 13:05:08 · 353 阅读 · 0 评论 -
13、Objective-C语法property详解
1、简介: property是Objective-C的关键词,与@synthesize配对使用,用来让编译好器自动生成与数据成员同名的方法声明。@synthesize则是用来生成对应声明方法的实现。 1.1 property的语法格式: @property (参数1,参数2)类型名字; 这里的参数,主要有以下三种: setter/getter方法(assig转载 2014-06-19 13:03:13 · 463 阅读 · 0 评论 -
12、Objective-C语法之NSSet和NSMutableSet
NSSet和NSMutableSet是无序的, 但是它保证数据的唯一性。当插入相同的数据时,不会有任何效果。从内部实现来说是hash表,所以可以常数时间内查找一个数据。 1、NSSet的使用 [NSSet setWithSet:(NSSet *)set]; 用另外一个set对象构造 [NSSet setWithArray:(NSArray *)array];用数组构造 [NSS转载 2014-06-19 13:02:20 · 400 阅读 · 0 评论 -
8、Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id)等
对象在运行时获取其类型的能力称为内省。内省可以有多种方法实现。 判断对象类型 -(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例 -(BOOL) isMemberOfClass: classObj 判断是否是这个类的实例 ps:本篇新建的类主要用于熟悉本篇内容设计,未考虑内存管理因素。 我们试试这两个方法的使用。转载 2014-06-19 12:55:43 · 424 阅读 · 0 评论 -
7、十分钟让你明白Objective-C的语法(和Java、C++的对比)
很多想开发IOS,或者正在开发IOS的程序员以前都做过Java或者C++,当第一次看到Objective-C的代码时都会头疼,Objective-C的代码在语法上和Java, C++有着很大的区别,有的同学会感觉像是看天书一样。不过,语言都是相通的,有很多共性。下面列出Objective-C语言的语法和Java,C++的对比,这样你就会很容易Objective-C的语法是怎么回事了。 先目睹转载 2014-06-19 12:54:00 · 494 阅读 · 0 评论 -
6、Objective-C语法之异常处理
Objective-C的异常比较像Java的异常处理,也有@finally的处理,不管异常是否捕获都都要执行。 异常处理捕获的语法 @try { } @catch (NSException *exception) { } @finally { } @catch{} 块 对异常转载 2014-06-19 12:52:20 · 425 阅读 · 0 评论 -
3、Objective-C语法之类和对象
介绍Objective-C类和类对象,方法的简单使用。 1、类和方法 下图中是一段的类声明的语法展示,声明了一个叫做 MyClass 的类,它继承于根类:NSObject。(根类可以被所有的其他类直接或间接继承。) 下图是一个方法的语法展示,方法的声明由以下几个部分构成:方法类型标识符,返回类型,一个或多个方法签名关键字,以及参数类型和名称。 类的实体变量的转载 2014-06-19 12:45:06 · 427 阅读 · 0 评论 -
2、Objective-C语法之字符串NSString
Objective-C里核心的处理字符串的类就是NSString和NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理。这两个类的最主要的区别是NSString创建赋值后不能动态修改长度和内容,除非给重新赋值。而NSMutableString类似与链表的,在创建赋值后可以进行修改长度,插入,删除等操作。 注:以下代码运行环境是:XCode 4.转载 2014-06-19 12:44:01 · 461 阅读 · 0 评论 -
11、Objective-C语法之NSDictionary和NSMutableDictionary
Java有Map,可以把数据以键值对的形式储存起来,取值的时候通过key就可以直接拿到对应的值,方便快捷。在Objective-C语言中,词典就是做这样的事情的,和NSArray一样,一个词典对象也能保存不同类型的值,词典也分别有不可变词典和可变的词典(NSDictionary与NSMutableDictionary),前者是线程安全的,后者不是 。 1、不可变词典NSDiction转载 2014-06-19 13:00:19 · 377 阅读 · 0 评论