object-c中的点调用和权限-创新互联

1.如果你学过JAVA语言的的话,点调用的经常使用到的。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册网站空间、营销软件、网站建设、湖北网站维护、网站推广。

在JAVA中创建一个学生类:

publicclass student {

private String name;

private String age;

publicvoid setName(String name){

this.name  = name;

}

public String getName(){

returnname;

}

}

如果我们要调用student中的setName方法直接使用创建student.setName("张三")就可以使用setName方法,由于在JAVA中我们的类的属性通常都是私有的不可以直接调用的。所以要调用set方法设置值.

2.上面的例子只是回顾下什么叫做点调用:Object-c例子:

//-------------------------------------------------------------定义文件

#import <Foundation/Foundation.h>

@interface what : NSObject{

@public

int _age ;

@public

int _number;

}

-(void) setAge:(int) newAge;

-(int) age;

-(void) setNumber:(int) newNumber;

-(int) number;

@end

//-------------------------------------------------------------实现文件

#import "what.h"

@implementation what

-(int)age{

NSLog(@"age的get方法");

return_age;

}

-(void)setAge:(int)newAge{

NSLog(@"age的set方法");

_age = newAge;

}

-(int)number{

NSLog(@"number的get方法");

return_number;

}

-(void)setNumber:(int)newNumber{

NSLog(@"numbe的get方法");

_number = newNumber;

}

@end

//-------------------------------------------------------------main方法

#import <Foundation/Foundation.h>

#import "what.h"

int main(int argc, constchar * argv[])

{

@autoreleasepool {

what *my  = [[whatalloc] init];

    //这里调用了setAge

    my.age = 20;

    //这里调用了setNumber

    my.number = 100;

    //这里调用了get方法

    NSLog(@"my age is %i;and my number is %i",my.age,my.number);

  }

return0;

}

------------------------------------------------------------------

当我们运行上面的程序后会打印:

2014-04-15 23:04:51.400 点调用[588:303] age的set方法

2014-04-15 23:04:51.402 点调用[588:303] numbe的get方法

2014-04-15 23:04:51.402 点调用[588:303] age的get方法

2014-04-15 23:04:51.402 点调用[588:303] number的get方法

2014-04-15 23:04:51.403 点调用[588:303] my age is 20;and my number is 100

------------------------------------------------------------------

从打印的结果来看,我们的Objec-c在使用点调用的时候,调用的是get或者set方法。

把打印的代码修改一下:

NSLog(@"my age is %i and my number is %i",my->_age,my->_number);

打印结果为:

------------------------------------------------------------------

2014-04-15 23:08:11.194 点调用[632:303] age的set方法

2014-04-15 23:08:11.204 点调用[632:303] numbe的get方法

2014-04-15 23:08:11.205 点调用[632:303] my age is 20 and my number is 100

------------------------------------------------------------------

从上面的打印可以看出我们没有调用get方法。

3.这里我要补充一下,这里我们使用了到了Object-c中的权限关键字:@public,

Object-c中权限有3种:

@public:任何类都可以方法

@protected:子类可以访问

@private:本类可以访问

在Object-c中默认的权限是@protected,也就是说子类可以访问。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

新闻标题:object-c中的点调用和权限-创新互联
链接地址:https://www.cdcxhl.com/article20/ddgjjo.html

成都网站建设公司_创新互联,为您提供网页设计公司软件开发移动网站建设搜索引擎优化小程序开发网站排名

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设