filePrivate现在在Swift 4中的意义是什么?

sub*_*272 5 private access-control swift swift4

由于现在可以在扩展中访问"私有","文件私有"的意义是什么.任何人都可以用一个例子解释.

Rob*_*Rob 11

private限制对该文件中该类的访问.fileprivate限制对该文件的访问.

想象一下这些都在同一个文件中:

class Foo {
    private var x = 0
    fileprivate var y = 0
}

extension Foo {
    func bar() {
        // can access both x and y
    }
}

class Baz {
    func qux() {
        let foo = Foo()

        // can access foo.y, but not foo.x
    }
}
Run Code Online (Sandbox Code Playgroud)