现在正在学习OC,就把我最近学习的历程跟大家分享一下,希望能对后来者有帮助,写的不好的地方希望大家给予建议
1.注释
在编写程序时,注释是非常重要的。我跟大家一些刚学编程的人一样,总觉得添加程序是一件非常量费时间、而且没意义的事,但当我现在去看我以前写的稍微复杂一点的程序,我发现我都不是很容易看懂它是怎么写的了。说这么多就是想要告诉大家注释的重要性。
对一份规范的程序源代码而言,注释应该占到源代码的1/3以上。Objective-C中提供了基本的单行注释和多行注释语言。
单行注释就是在程序中注释一行代码,将双斜线(//)放在要注释的内容前面;多行注释是一次性将多行代码注释掉,使用“/*”和“*/”将需要注释的内容包含起来。
2.标识符和变量
1).分隔符
Objective-C语言中的分号(;)、花括号({})、方括号([])、圆括号(())、空格、圆点(.)都具有特殊的分隔作用。
*分号
在Objective-C中,分号作为语句的分隔,因此,每个Objective-C语句必须使用分号作为结尾。Objective-C程序允许一行书写多个语句,用分号隔开就好;一个语句也可以跨过多行,在最后加上分号就行
*花括号
花括号的作用就是定义一个代码块,一个代码块指的就是“{”和“}”所包含的一段代码。代码块在逻辑上是一个整体。对Objective-C语言而言,类的成员部分需要放在花括号中定义,方法体部分必须放在一个代码块里。条件语句中的条件执行语句和循环语句中的循环体通常也放在代码块里。(看到这里大家也许就要问了,什么是类啊,这个不要着急,后面会说到的)
花括号总是成对存在的,有一个“{”,则必然有一个“}”,反之亦然。
*方括号
方括号的主要作用是用于访问数组元素,方括号通常紧跟着数组变量名,而方括号里指定希望访问的数组元素的索引。例如a[0],访问a数组中的第一个元素。
Objective-C的对象调用方法时,通常与需要使用方括号括起来。
*圆括号
在定义函数时,必须使用圆括号来包含所有行参声明,调用函数时也必须 使用圆括号来传入实参值。在表达式中,圆括号还可以将某一部分括成一个整体,优先运算。还可以作为强制类型转换的运算符
*空格
Objective-C语言使用空格分隔一条语句的不同部分。Objective-C语言是一门格式自由的语言,所以空格几乎可以出现在程序的任何地方,也可以出现任意多个空格,但不要用空格把一个变量名隔开成两个,这将导致程序出错
Objective-C语言中的空格包含空格符(Space)、制表符(Tab)、和回车(Enter)等。
*圆点
圆点通常作为类/对象和它的属性之间的分隔符,表明调用某个类或某个实例的指定成员。
2).标识符规则
标识符是用于给程序中变量、类、方法命名的符号。Objective-C语言的标识符与C语言的区别就是多了个美元符$,开头必须是字母、下划线或美元符,后面可以跟任意数目字母、数字、下划线和美元符。标识符不可以包含空格,不能使用Objective-C的关键字,长度没有限制。
Objective-C是区分大小写的,所以abc和Abc是不同的
*标识符可以由字母、数字、下划线和美元符组成,但不能以数字开头
*不能是关键字,但可以包含关键字
3.数据类型分类
Objective-C要求所有变量必须先声明,后使用,声明变量时需要制定变量的类型
定义变量时的变量类型可以是Objective-C所支持的任意类型。它支持的数据类型与C语言基本相似
基本数据类型包括整型、浮点型、字符型和枚举型。
指针类型是Objective-C最重要的类型,所有的系统类、自定义类的本质都是指针类型。
还有一种特殊的空类型(null type),空类型就是nil值的类型,这种类型没有名称,所以不可能声明一个空类型的变量,或将变量转换成空类型。空引用(nil)是空类型变量唯一的值。空引用(nil)可以转换为任何引用类型。
在实际使用中,可以忽略空类型,嘉定假定nil只是指针类型的一个特殊直接量