欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

IOS点语法详解

程序员文章站 2024-01-19 16:06:40
ios点语法详解。在用oc写代码的时候,通常用到点语法。因为是用于属性,调用属性的getter方法。这种方法我们就不在过多介绍。今天看到一个demo,分类方法中的方法,使用点语法使用。瞬间不解。于是...

ios点语法详解。在用oc写代码的时候,通常用到点语法。因为是用于属性,调用属性的getter方法。这种方法我们就不在过多介绍。今天看到一个demo,分类方法中的方法,使用点语法使用。瞬间不解。于是研究一下点语法。并且写了一个demo。希望帮助大家深刻理解点语法
首先我们写一个分类方法 .h

@interface trfraction (trtransfer)
-(double)transfer;
@end

.m

@implementation trfraction (trtransfer)
-(double)transfer
{
    return self.n * 1.0 / self.d;
}
@end

controller中调用

- (void)viewdidload {
    [super viewdidload];

    trfraction *f2 = [trfraction fractionwithn:15 andd:25];
    [self showfraction:f2];

    //self.outputlabel.text = [nsstring stringwithformat:@"%lg", [f2 transfer]];
    self.outputlabel.text = [nsstring stringwithformat:@"%lg", f2.transfer];

}

看到上面一种方法相比大家都十分熟悉。类中的实例方法,直接使用类对象调用,用的是空格语法调用,通常来说我们都这么用。但是实验了一下点语法也可以正常调用,正常输出。这就要说到点语法的特性。点语法实际上就是调用getter方法。那怎么判断是getter方法呢。就是返回值。我们可以看到transfer这个方法有返回值。所以就被当成的getter方法。可以正常调用。虽然我们知道没有transer这个属性。但是这个方法是可以被当成getter方法调用的。