权限控制(access Control)

private:只能在当前源文件中使用的实体,称为私有实体,使用private级别,可以用作隐藏某些功能的实现细节

fileprite: 在swift3中。新增了一个fileprivate来显示的表明,这个元素的访问权限为文件内私有

public:可以访问自己模块或应用中源文件里的任何实体,别人也可以访问引入模块中源文件里的所有实体。通常情况下,某个接口或framework,作为内部结构使用时,你可以将其设置为public,可以被任何人访问。但其他module中不可以被override和继承,而在module内可以被override和继承。

open:可以被任何人使用,包括override和继承。

internal:可以访问自己模块或应用中源文件里的所有实体,但是别人不能访问该模块中源文件里的实体。通常情况下,某个接口 或 framework作为内部结构使用时,你可以将其设置为internal级别

final:final的问题在于在标记之后,在任何地方都不能override。

权限排序:

open > public > interal > fileprivate > private

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容