混淆变量的访问控制声明和包含变量的 class

confusion over access control declaration for variable and the class enclosing the varaible

下面的代码在 Swift 中是合法的,但是,我只是想知道为什么 class Something 没有被强制声明为私有。我之所以这么说是因为它的一个变量private var anInstanceOfWhatever: Whatever = Whatever()是一个私有变量,如果class Something声明为internalpublic,我可以使用class 源文件外的东西,但是它的一个变量只能在源文件内访问,这不会造成某种冲突吗?有人可以帮我澄清一下这个概念吗?

private class Whatever{

}

class Something{
    private var anInstanceOfWhatever: Whatever = Whatever()
    var number: Int = 0
    var text: String = ""
}

不,它不会产生冲突。如果您在文件外部使用 Something,您将无法访问 属性 anInstanceOfWhatever,但您可以访问每个非私有 属性 或方法。