在?Swift?中知态,public,?fileprivate, 和?set?是訪問控制關(guān)鍵字识腿。它們用于限制代碼的訪問級別折欠。
-?public:這是一個(gè)訪問級別励烦,表示該項(xiàng)可以在其定義模塊的任何源文件中以及其他導(dǎo)入該模塊的模塊中訪問谓着。
-?fileprivate:這是一個(gè)訪問級別,表示該項(xiàng)只能在其定義的源文件中訪問崩侠。
-?set:這是一個(gè)屬性訪問器漆魔,用于設(shè)置屬性的值。
當(dāng)你看到?public?fileprivate(set)?時(shí)却音,這意味著這個(gè)屬性是公開的(可以在任何地方訪問)改抡,但是它的?setter?是文件私有的(只能在定義它的文件中設(shè)置)。
例如:
public?class?MyClass?{
????public?fileprivate(set)?var?myProperty:?Int?=?0
}
在這個(gè)例子中系瓢,myProperty?可以在任何地方訪問阿纤,但只能在?MyClass?所在的文件中修改。