Swift(二十四、访问权限)


1、Swift入门学习笔记(第一版),对Swift的基础知识点进行梳理总结。知识点一直在变,只是作为参考,以苹果官方文档为准~

2、在学习完基本的知识点以后会结合官方文档及相关资料,在此版本的基础上进行添加更改。


二十四、访问权限


这部分的内容有点绕,感觉一下子记住也不现实,只是有个大概的思路,基本的记住,用到去查,以后用熟了可能会好些


限定其他源文件或模块中代码对你的代码的访问级别


1、模块和源文件

模块:以独立单元构建和发布的FrameworkApplication。一个模块可以使用import引入另一个模块

源文件:Swift中的Swift file,编写源代码的文件,通常属于一个模块。


2、访问级别

2.1、三个级别:由高到低

public:可以访问当前模块中源文件里的任何实体。别人引入当前模块也能访问。当想让framework中的某个接口被任何人使用时,设为public级别

internal:可以访问当前模块中源文件里的任何实体。但别人引入当前模块不能访问。某个接口或framework作为内部结构使用时,设为internal

private:只能在当前源文件中使用的实体,称为私有实体。常用来隐藏某些功能的而实现细节

因此Swift中的private区别于其他语言,只要在同一源文件下,一个类可以访问该类定义的所有private实体


2.2、使用原则

使用原则:访问级别统一性
一个public访问级别的变量,不能将其定义为internalprivate—->这句话很拗口,是不能重新定义的意思么?
函数的访问级别不能高于它的参数、返回值类型


2.3、默认访问级别

默认为internal


3、自定义类型

类的访问级别会影响类成员(属性,函数,构造方法等)的默认级别。

注意即使这个类是public级别,但是它的成员默认为internal级别,而不是public

public class SomePublicClass {          // 显式的 pu
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值