objective-c 基本语法 和C一样,声明变量,变量输出,数据类型,变量运算都和C一样。但是到类这一块,就很是不一样了。C没有类的概念。关于类的声明 调用,和php截然不同。刚入手很是别扭。
一、类的声明:
在创建一个类时候,会生成两个文件h和m,h是头文件,声明类的名字,类中的属性和方法。在m文件中,具体写类中的方法的代码片段。
h文件声明类的格式
//@interface关键词 类名 冒号 父类名
@interface ClassName : ParentClassName
//结束标志
@end
就相当于php中的class ClassName extends ParentClass{}
类中的属性,用大括号括起来;
然后声明类中的方法。格式:
-(return datatyle) FunctionName : (ParamDatatype) ParamName;
-(返回值类型) 方法名 冒号: (参数数据类型) 参数名
如下的三个方法,分别是不含参数 一个参数 多个参数的声明格式
@property关键字 是让类以外的程序能够访问此类中的变量
m文件:写类的具体代码,@implementation关键字 创建一个访问器,和h文件中的@property 在一起使用,为了让外部程序能访问类中的属性,填写类的具体内容格式:
-(return Datatype) ClassName{
代码片段
}
最后 调用类。首先导入类的头文件(h文件)。
实例化:ClassName *Obj = [ClassName alloc];
访问类中的变量:Obj.ParamName;//对象 点上一个属性(类中的变量)
调用类中的函数:[Obj FunctionName:Param];//方括号,括号里边是对象 空格 函数名 冒号 参数1 冒号 参数2
对象使用完毕后要销毁,[Obj release];
在销毁变量那一步,可能会报错:release is unavailable 我在网上查阅的资料是:点项目名,然后选Build Settings,把Objective C Automatic Reference Counting 属性设置为no,至于为什么?不知道,查阅的博文也没有写