extension可以看到它所扩展的范例的全部私有成员,条件是范例的extension和范例声明写在同一个文件中
例:
class Dog { private var whatADogSays = "woof"} extension Dog { func speak() { print(self.whatADogSays) // ok }}
一个变量的set和get可以有差别的访问权限
如:
private(set) var myVar意味着该变量的set是private的,但是get还是internal的
public private(set) var myVar 意味着该变量的get是public的,set是private的