objective-c 语言学习总结
文章平均质量分 77
根据对 objective-c 语言的学习,对 objective-c 的知识进行系统的梳理总结。适合新手和进阶的 ios 开发人员学习和重温 objective-c 语言。
Albert_H
这个作者很懒,什么都没留下…
展开
-
【IOS 开发学习总结-OC-12】★objective-c面向对象之——合成存取方法与点语法
合成存取方法前面我们介绍了为成员变量自己实现 setter 方法和 getter 方法,但如果一个了类中有很多成员变量时,会非常的不便。 objective-c从 OC 2.0版本开始,自动合成了setter 方法和 getter 方法。而且,如果开发者需要自己控制某个setter 方法和 getter 方法的实现时,可以自己提供 setter 方法和 getter 方法,开发者提供的setter原创 2015-09-21 13:43:47 · 1907 阅读 · 1 评论 -
【IOS 开发学习总结-OC-11】★objective-c面向对象之——封装和访问控制符
封装封装的定义面向对象的三大特征(封装,继承,多态)之一。指的是:将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问。良好的封装,可以实现的目的对一个类或对象实现良好的封装,可以实现的目的有: 1. 隐藏类的实现细节; 2. 使使用者只能通过事先预定的方法来访问数据,从而可以在该方法里加入控制逻辑,限制对成员变量的不合理访问。原创 2015-09-21 08:47:35 · 1523 阅读 · 0 评论 -
【IOS 开发学习总结-OC-10】★ objective-c面向对象之——成员变量,模拟类变量,单例模式
OC 中变量根据定义位置的不同,可以分为3大类:成员变量,局部变量和全局变量。 之前提到过方法是由函数演化而来的,所以不管是方法中定义的变量,还是函数中定义的变量,都是局部变量。成员变量及其运行机制成员变量:指的是在类接口部分或类实现部分定义的变量。 说明:objective-c 的成员变量都是实例变量,并不支持真正的类变量。 实例变量从该类的实例被创建开始起存在,直到系统完全销毁这个实例,实原创 2015-09-20 21:54:44 · 1589 阅读 · 1 评论 -
【IOS 开发学习总结-OC-9】★ objective-c面向对象之——方法
objective-c 的方法不能独立存在,所有的方法都必须定义在类里。方法在逻辑上,要么属于类,要么属于对象。方法的所属性不难发现,方法在语法上和功能上,方法与函数很相似。其实,方法是由传统的函数发展而来的。 objective-c 调用函数时的传参机制和调用方法时的传参机制是一样的,都是值传递,都是传入参数的副本。方法与传统的函数的显著不同:在结构化编程语言里,函数是一等公民。整个程序是由一个原创 2015-09-20 17:47:22 · 833 阅读 · 0 评论 -
【IOS 开发学习总结-OC-8.2】★★ objective-c面向对象之——类和对象(下)
知识点安插:如果访问权限允许,objective-c 允许直接通过对象来访问成员变量。语法格式:对象->成员变量名;对象与指针这里沿用上篇objective-c面向对象之——类和对象(上)的代码。 在 FKPersonTest.m中,有这样的代码: FKPerson* person = [[FKPerson alloc] init]; 这行代码产生了2个东西,一个是 person 变量,一个原创 2015-09-20 16:14:30 · 716 阅读 · 0 评论 -
【IOS 开发学习总结-OC-8.1】★★ objective-c面向对象之——类和对象(上)
OC 是面向对象的语言。类,可以被认为是一种自定义的数据类型,使用它可以定义变量。所有用类定义的变量都是指针类型的变量,他们将会指向该类的类型。——就像现实世界中描述某一类对象的共同特征,对象是类的具体存在。 objective-c 也支持面向对象的三大特征:封装,继承和多态。类和对象所有的类都是指针类型的变量。定义类面向对象的程序设计过程有2个重要概念:类(class) 和对象原创 2015-09-17 16:03:57 · 1443 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.11-★】 objective-c——指针数组和指向指针的指针
指针数组与 main() 函数形参有时需要一次声明具有多个相同特征的指针变量,此时可借助,指针数组来实现。指针数组使用最多的地方是处理字符串数组的情况,由于字符串本身需要使用 char * 型指针变量来表示,当程序中有多个字符串要保存时,就可以借助指针数组。声明指针数组与声明普通数组的语法类型:语法格式:类型* 数组变量[长度]; 注意与类型 (*变量名)[长度];的语法格式相区分。 区别在于:原创 2015-09-17 15:36:03 · 3043 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.10-★】 objective-c——函数与指针
指针变量出了可以指向普通的 int变量,float 变量和数组外,还可以指向函数的入口。用函数指针变量调用函数定义函数后,C 语言允许定义一个指针变量来指向该函数。 使用函数指针的步骤: 1. 定义函数指针变量。语法格式个为:函数返回值类型(*指针变量名)(); 2. 将任何已有的函数入口赋值给函数指针变量。如:pt=avg; 关于上面句子的2点说明: - C 语言允许任何已有的函数赋值原创 2015-09-17 09:16:54 · 3549 阅读 · 1 评论 -
执行力如何提高?
执行力如何提高原创 2016-01-04 20:07:42 · 713 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.8-★★】 objective-c——指针与数组
指向数组的指针如果指针变量指向数组的第一个元素,该指针称为指向数组的指针。 C 语言规定: 数组变量的本质就是一个指针常量,保存了指向第一个数组元素的指针。 数组中第一个元素的地址称为数组的首地址,数组的首地址会被当成数组的地址。简单说,就是数组变量保存了数组的首地址。 示例代码:#import <Foundation/Foundation.h>int main(int argc , c原创 2015-09-15 10:35:28 · 1262 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.7-★★】 objective-c——指针
指针是 C 语言的一个重要概念。OC 系统类型的变量,自定义类型的变量都是指针。指针的概念定义一个变量后,程序运行过程中,该变量保存在内存中,那要使用该变量的值有这样2种方法: 1.通过变量来访问它的值。——直接访问 2.到该变量的存储位置去取它的值。——间接访问操作系统会为每个内存单元进行编号,这个编号就是内存单元的地址。指针也就是指这些单元的内存地址。简单的说,变量的内存地址就是该变量的指针原创 2015-09-14 15:08:07 · 2668 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.6-★】objective-c ——块(Block)
块是 OC对 ANSI 做的扩展,使用块可以简化 objective-c 的编程。很多 objective-c 的很多API 都依于块。块的基本语法定义块的语法格式:^[块的返回值类型](形参类型1,形参1,形参类型2,形参2,.....){ //块执行体}块,其实是个匿名函数。定义块和定义函数的区别定义块和定义函数的区别: - 定义块必须以^开头 - 定义块无需指定名字原创 2015-09-14 08:16:37 · 1339 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.5】objective-c 的c语言特性——结构体
有时候,程序需要多个基本类型的组成一个有机整体,比如说定义一个矩形,就需要 x,y,width,height 4个值。这就需要使用 语言提供的结构体。定义结构体语法格式:struct 结构体类型名{ //成员列表;}其中,struct 是关键字。结构体类型名可以任意指定,成员列表可以是基本类型也可以是结构体类型。 定义一个 rect 结构体类型,示例:st原创 2015-09-13 19:10:07 · 1707 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.4】objective-c与c语言的预处理
在编译器对 C或者 objective-c 进行编译前,编译器会对这些预处理命令进行处理,然后将这些预处理的结果与源程序一起编译。预处理命令的2个特征: 1.都必须以#开头 2.通常位于程序开头部分。使用#define及#undef 执行宏定义这里#define的作用是:为字符串起一个名字。可以使用更有意义的名字代替原来的字符串。为编程提供便利。 示例:#define PI 3原创 2015-09-13 10:17:25 · 984 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.3】C 语言特性——动态存储与静态存储
从变量的存储机制来看,C 语言的变量可分为动态存储变量与静态存储变量。变量按存储机制的分类动态存储:程序在运行期间根据需要动态分配内存的存储方式。 静态存储:程序在运行开始就分配固定内存的存储方式。就C 程序运行的内存来说,大致可分为3个部分:程序区,静态存储区(在运行开始就分配固定内存,直到程序运行结束才会释放内存),动态存储区(运行期间根据需要动态分配内存)。C 的变量,要么放在静态存储区,要原创 2015-09-13 09:27:46 · 923 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.2】C 语言特性——局部变量与全局变量
分类 定义 特性 局部变量 函数内部定义的变量 只能在函数内部使用 全局变量 在函数外部定义的变量 可被该源文件中所有的函数访问局部变量按定义形式分为3种:形参:形参的作用域在整个函数内有效。函数局部变量:从定义该变量的地方生效,到该函数结束时失效。代码块局部变量:从定义该变量的地方生效,到代码块结束时失效。 定义代码块局部变量的示例代码:int main(原创 2015-09-13 08:12:58 · 992 阅读 · 0 评论 -
【IOS 开发学习总结-OC-7.1】C 语言特性——函数
函数C是结构化的语言,函数就是 C 的最小单位。C 与 OC 程序入口都是 main()函数,该函数是系统能识别的特殊函数。其他函数地位平等,能相互调用。定义函数定义函数的语法格式: 函数返回值类型 函数名(形参列表) { //0到多条可执行语句 } 格式说明:返回值类型:可以 OC 允许的任何数据类型。如果声明了返回值类型,函数体内应有一个有效 的 return 语句,用原创 2015-09-12 18:17:31 · 1089 阅读 · 0 评论 -
【IOS 开发学习总结-OC-6】objective-c 的数组
objective-c是C 语言的超级,直接使用了 C 语言的数组。定义数组语法格式:type array[length],其中的 length 可以是个固定的整数也可以是整数变量或表达式。 定义数组时,如果没有对数组进行初始化,系统对数组元素赋值为默认的初始值。赋初始值的规则如下:所有整型(包括字符型)的数组元素,系统默认赋值为0;所有浮点型的数组元素,系统默认赋值为0.0;所有指针型的数原创 2015-09-12 12:13:03 · 4084 阅读 · 0 评论 -
【IOS 开发学习总结-OC-5】objective-c 的流程控制
在编程语言中最常见的就是顺序结构。顺序结构就是程序从上到下一行一地执行,中间没有跳转。如果没有流程控制,objective-c 中的语句是一个顺序执行流。几乎所有的编程语言,都会提供2种基本的流程控制结构:分支结构(用于根据条件选择执行)和循环结构(用于根据条件循环重复执行代码)。分支结构objective-c 用于流程控制有2种分支语句: 1. if 语句: 2. switch 语句:if原创 2015-09-12 07:02:43 · 1287 阅读 · 0 评论 -
【IOS 开发学习总结-OC-4】objective-c 运算符
运算符是用于数据运算,赋值和比较等的特殊符号。 objective-c 语言中的运算符有以下几种:算术运算符赋值运算符比较运算符逻辑运算符位运算符类型相关运算符算术运算符有7个基本运算符:+:加法运算符-:减法运算符(还可以作为负号使用)*:乘法运算符/:除法运算符(这里的除法运算符和我们日常中的除法略有不同,如10/4的结果是2,而不是2.5。另外,避免除数为0的情况)%原创 2015-09-11 18:22:27 · 7159 阅读 · 0 评论 -
【IOS 开发学习总结-OC-3】objective-c 类型转换
objective-c 中,不同类型的值经常需要相互转换。这种类型转换的方式有2种:自动类型转换和强制类型转换。自动类型转换:这个是由系统自动完成的。 自动转换的规则:整型变量和值赋给浮点型变量,无变化。浮点型变量赋给整型变量,会将小数点后的数值全部舍弃。把取值范围大的变量和值赋给取值范围小的变量时,可能发生溢出。这种类型转换,就像大小不同的杯子装满水后,往倒入类型的空杯子倒水一样。小杯子倒原创 2015-09-11 18:17:10 · 1660 阅读 · 0 评论 -
【IOS 开发学习总结-OC-2】objective-c 数据类型
数据类型和运算符objective-c 语言是一种面向对象的强类型语言。强类型就要求:所有的变量必须先声明后使用;指定的类型变量只能接受同样类型的值。强类型语言可以在编译的过程中发现源码的错误,保证了代码的健壮。注释几乎所有的编程语言都提供了注释的方法。代码是源代码的重要组成部分,对一份规范的程序源代码而言,注释应该占到源代码的1/3左右。一般的编程语言都提供了单行注释和多行注释功原创 2015-09-11 07:38:05 · 2091 阅读 · 0 评论 -
【IOS 开发学习总结-OC-1】objectiveC &ios
objective-C objective-C 是C 语言为基础的C 语言的超集。是苹果公司"专属"的编程语言。这里不过多介绍 OC语言的的诞生与发展。OC 语言已经诞生30多年了,已经算比较老了。随着 swift 语言的推出及不断完善,未来更为强大的 swift 语言替代 OC 只是个时间问题。但现在开发 IOS 的主流语言还是 OC,而且很多以前开发的应用都是 OC 语言开发的原创 2015-09-10 18:35:36 · 1110 阅读 · 0 评论