swift中的访问控制关键字

2017-10-18  本文已影响78人  Helong

swift3.0以后,访问控制关键字一共有5中,控制权限范围从高到低依次为

open > public > internal > fileprivate > private

1、open(开放的)

访问权限最高的一个,可以被任何人访问,override以及继承,不限制范围.好多系统库的属性都有open修饰的

2、public(公共使用)

仅次于open范围,也是可以被任何人访问,但是只限在同一module下才能被override和继承.好多系统库协议的函数都有public修饰的

3、internal(内部的,默认)

默认的权限范围,即不写的时候默认是internal修饰的。在同一module可以访问。

4、fileprivate(file+private)

同一个swift源文件下可以访问,一个.swift文件下,不同类之间是可以访问的.

4、private

权限范围最低的,只能在当前类里面访问,分类也不行.

注: 低级别权限范围修饰的类别里面不能包含比之高级别的修饰。例如:internal修饰的类里面不能包含public修饰的属性和函数等

注:module,一个app就是一个模块,一个第三方框架,第三发APi,第三方库,framework都是一个模块


final关键字,用来修饰类,属性和方法函数, 被final修饰的不能被继承和override,用来做权限控制.


上一篇下一篇

猜你喜欢

热点阅读