OC中实例变量可见度、setter、getter方法和自定义初始化方法-创新互联

在对类和对象有一定了解之后,我们进一步探讨实例变量的可见度等相关知识

创新新互联,凭借十年的成都网站建设、网站建设经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有上千多家案例。做网站建设,选成都创新互联公司

实例变量的可见度分为三种情况:public(共有),protected(受保护的,默认),private(私有的),具体的不同和特点如下:

OC中实例变量可见度、setter、getter方法和自定义初始化方法

具体的使用示例如下:

OC中实例变量可见度、setter、getter方法和自定义初始化方法

编程时默认的可见度是@protectde,为什么不使用@public呢?

因为OC是面向对象编程,使用@public关键字,暴漏了类内部的细节,从而不符合面向对象语言的三大特性之一——封装

实例变量经过@protectde修饰之后,我们就不能在该类和其子类外操作,例如mian.m文件。那么我们如何才能在mian.m文件中设置person的_name,读取person的_name。

这就需要我们去添加两个方法即setter和getter方法

在OC里,为实例变量赋值的方法成为setter(设置器)

读取实例变量值的方法称为getter(访问器)

赋值(setter):通过方法传入参数,在类的内部实现实例变量的赋值

取值(getter):通过方法获取实例变量的值

OC里规定了setter和getter的书写格式

如果一个实例变量是int age;或者int_age;

setter的书写格式如下: - (void)setAge:(int)age;即set + 首字母大写的实例变量名(忽略下划线)

getter的书写格式如下: - (int)getAge;即返回值类型与变量类型一致,方法名与实例变量名相同(忽略下划线)

具体示例如下:

Person.h文件中:

OC中实例变量可见度、setter、getter方法和自定义初始化方法

Person.m文件中:

OC中实例变量可见度、setter、getter方法和自定义初始化方法

多参方法:

OC中实例变量可见度、setter、getter方法和自定义初始化方法

OC中的方法分为两种:类方法和实例方法

类方法:只能类使用,例如:+ (id) alloc 注:类方法中不能使用实例变量

实例方法:只能对象使用,例如:_(void)sayHi

OC中实例变量可见度、setter、getter方法和自定义初始化方法

类中不能出现同名方法

“ :”标识参数,不能省略。有冒号必须有参数

方法的使用

OC中实例变量可见度、setter、getter方法和自定义初始化方法

自定义初始化方法

h文件中:

OC中实例变量可见度、setter、getter方法和自定义初始化方法

m文件中:

OC中实例变量可见度、setter、getter方法和自定义初始化方法

#import

导入头文件,即:导入头文件中的内容到当前类。

#import“”导入自定义类。#import<>导入类库中的头文件

功能类似C语言中的#include,但是可以避免文件被重复导入

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

当前文章:OC中实例变量可见度、setter、getter方法和自定义初始化方法-创新互联
分享地址:https://www.cdcxhl.com/article16/djdcgg.html

成都网站建设公司_创新互联,为您提供全网营销推广网站建设网站维护外贸网站建设微信公众号域名注册

广告

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

成都网页设计公司