ios开发入门教程第4节将讲述object-c点语法的使用,在上一节object-c面向对象的Student学生类中,我们在main函数中调用学生类的get和set方法分页是用中括号“[stu age]”和“[stu setAge:20]”,即对象+空格+方法名或者后面再加冒号“:”+参数,这样的形式来调用Student.h中申明的方法的。
今天我们将在object-c中使用点语法来调用申明的方法,这也是为了适应非object-c程序员快速适应object-c语言开发而设计的,例如java,c#等都是这样调用方法的,而实际上内部object-c语言仍然把点语法翻译成了中括号的形式,所以效果是一样的。
要注意的是,object-c点语法主要是用来替代实体类中的get和set方法,一般的方法是不能这样使用的哦!
下面是main函数中用点语法替代中括号的形式来调用get和set方法的实例,请结合上一节第三节中的代码,Student.h和Student.m中的逻辑不变,只改变main函数里面的代码,如下。
#import <Foundation/Foundation.h> #import "Student.h" int main(int argc, const char * argv[]) { @autoreleasepool { //创建Student学生类的对象 Student *stu = [[Student alloc] init]; //set方法设置年龄 //[stu setAge:10] stu.age = 10; //get方法获取年龄 //int age = [stu age]和stu.age效果一样 int age = stu.age; NSLog(@"年龄是:%d",age); } return 0; }
通过以上的代码,需要解释一下,get和set方法好像都是stu.age,那么如何区分哪个是get方法,哪个是set方法呢?很简单,如果stu.age右边有等号,并且有参数,那么就是set方法,如果stu.age左边有等号,并且有返回值,那么就是get方法。
通过本章学习你就学会了object-c点语法的使用了,请记住,勤学苦练,不要仅仅只是看看。