这是在操场上做的,只是为了简化
类MyPrivateVar
{
private-var-priv:String?
}
var myInstance=MyPrivateVar()
myInstance.priv=“某物”
没有编译器警告。事实上,自动完成显示的是priv
,没有问题。
我的理解是,在类的{}边界之外,我不应该看到私有的任何东西,func
或var
我错过什么了吗
Swift中的访问修饰符的实现方式与其他语言不同。有三个层次:
private
:只能在该特定文件中访问
内部
:仅可在模块(项目)内访问
public
:可从任何地方访问
除非另有标记,否则默认情况下,您编写的所有内容都是内部的
当这些功能在beta 4中引入时,Swift博客上有一篇关于访问控制的文章,苹果的文档中也有一章