麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Swift > 正文

深入理解Swift中的訪問控制關鍵字

2020-03-09 17:45:38
字體:
供稿:網(wǎng)友

前言

在Swift3.0以前有三種訪問控制關鍵字,分別是private、internal和public。而在swift3以后,又在原來的基礎上增加了兩種訪問控制關鍵字:fileprivate和open。他們可以看作是private和public的進一步細分。下面是各個修飾符的區(qū)別以及訪問權限排序。

各個修飾符的區(qū)別

private

swift3.0 private訪問級別所修飾的屬性或者方法只能在當前類里訪問。

class A { private func test() {  print("this is private function!") }}class B: A { func show() {  test() }}

上面代碼在swift3.0以前,可以順利編譯成功,但是在swift3.0中會編譯失敗,提示class B中test()方法不可用。

fileprivate

fileprivate是Swift3.0后新加的權限修飾符,fileprivate訪問級別所修飾的屬性或者方法在當前的Swift源文件里可以訪問。(比如上面例子中把private改成fileprivate就不會報錯了)。

internal

internal為默認訪問級別,可默認不寫。internal訪問級別所修飾的屬性或方法在源代碼所在的整個模塊都可以訪問。如果是框架或者庫代碼,則在整個框架內(nèi)部都可以訪問,框架由外部代碼所引用時,則不可以訪問。如果是App代碼,也是在整個App代碼,也是在整個App內(nèi)部可以訪問。

public

可以被任何人訪問。但其他module中不可以被override和繼承,而在module內(nèi)可以被override和繼承。

open

open為swift3.0后新加權限關鍵字,可以被任何人使用,包括override和繼承。

修飾符訪問權限排序

從高到低得權限控制順序如下

open > public > interal > fileprivate > private

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網(wǎng)的支持。


注:相關教程知識閱讀請移步到swift教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久久中 | 国产成人强伦免费视频网站 | 一级黄色影院 | 久久久久av69精品 | 国产精品999在线 | 日日摸夜夜添夜夜添牛牛 | 国产精品99久久99久久久二 | 麻豆一二区 | 狠狠干网站 | 午夜精品毛片 | 成年人免费视频大全 | 国产做爰 | 中文字幕亚洲一区二区三区 | 久久精品免费国产 | 一区二区三区日本在线观看 | 毛片在哪看| 欧美视频在线一区二区三区 | 亚洲成人在线免费观看 | av在线更新 | 91亚洲免费视频 | 久久精品国产清自在天天线 | 国产精品亚洲综合 | 国产精品久久久久免费视频 | 亚洲一区二区三区四区精品 | 91av资源在线 | 亚洲精品免费播放 | 国产精品久久久久av | 红桃一区 | 斗破苍穹在线免费 | 国产精品久久久久av | 久久人添人人爽人人爽人人片av | 欧美一级黄 | 午夜视频福利 | 视频一区二区视频 | 国产亚洲精品久久久久5区 综合激情网 | 久久精品视频免费 | 国产精品久久久久无码av | 一级免费在线 | 国产一级毛片国语版 | 久久久久久久久久久久久久国产 | 中文字幕在线播放不卡 |