欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

深入理解Swift中的訪問(wèn)控制關(guān)鍵字

 更新時(shí)間:2017年03月24日 09:42:52   作者:jvaeyhcd  
這篇文章主要給大家介紹了Swift中訪問(wèn)控制關(guān)鍵字的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。

前言

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

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

private

swift3.0 private訪問(wèn)級(jí)別所修飾的屬性或者方法只能在當(dāng)前類里訪問(wèn)。

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

class B: A {
 func show() {
  test()
 }
}

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

fileprivate

fileprivate是Swift3.0后新加的權(quán)限修飾符,fileprivate訪問(wèn)級(jí)別所修飾的屬性或者方法在當(dāng)前的Swift源文件里可以訪問(wèn)。(比如上面例子中把private改成fileprivate就不會(huì)報(bào)錯(cuò)了)。

internal

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

public

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

open

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

修飾符訪問(wèn)權(quán)限排序

從高到低得權(quán)限控制順序如下

open > public > interal > fileprivate > private

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • SwiftUI 中創(chuàng)建反彈動(dòng)畫的實(shí)現(xiàn)

    SwiftUI 中創(chuàng)建反彈動(dòng)畫的實(shí)現(xiàn)

    這篇文章主要介紹了SwiftUI 中創(chuàng)建反彈動(dòng)畫的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • swift 可選型的使用詳解

    swift 可選型的使用詳解

    可選性是Swift提供的一個(gè)特殊類型,它為我們編寫程序提供便利的條件。這篇文章主要介紹了swift 可選型的使用詳解,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-10-10
  • Swift中的常量和變量簡(jiǎn)單概述

    Swift中的常量和變量簡(jiǎn)單概述

    這篇文章主要介紹了Swift中的常量和變量簡(jiǎn)單概述的相關(guān)資料,非常具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05
  • Swift算法之二叉樹實(shí)現(xiàn)的方法示例

    Swift算法之二叉樹實(shí)現(xiàn)的方法示例

    二叉樹是計(jì)算機(jī)科學(xué)中最基本也是最重要的樹型結(jié)構(gòu),最常見(jiàn)的二叉樹生成算法通常是使用遞歸或者其他描述類語(yǔ)言的方法來(lái)實(shí)現(xiàn)。本文主要介紹了Swift算法之二叉樹實(shí)現(xiàn)的方法,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-03-03
  • RxSwift學(xué)習(xí)教程之類型對(duì)象Subject詳解

    RxSwift學(xué)習(xí)教程之類型對(duì)象Subject詳解

    這篇文章主要給大家介紹了關(guān)于RxSwift學(xué)習(xí)教程之類型對(duì)象Subject的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起看看吧。
    2017-09-09
  • Swift教程之基本運(yùn)算符詳解

    Swift教程之基本運(yùn)算符詳解

    這篇文章主要介紹了Swift教程之基本運(yùn)算符詳解,本文講解了賦值運(yùn)算符、數(shù)學(xué)運(yùn)算符、取余運(yùn)算符、浮點(diǎn)余數(shù)計(jì)算、自增和自減運(yùn)算符等,需要的朋友可以參考下
    2015-01-01
  • Swift中的條件判斷、循環(huán)、跳轉(zhuǎn)語(yǔ)句基礎(chǔ)學(xué)習(xí)筆記

    Swift中的條件判斷、循環(huán)、跳轉(zhuǎn)語(yǔ)句基礎(chǔ)學(xué)習(xí)筆記

    if、for和while循環(huán)、switch等這些基本的程序流程控制語(yǔ)句基本上是每個(gè)編程語(yǔ)言的標(biāo)配,在入門環(huán)節(jié)中,這里對(duì)Swift中的條件判斷、循環(huán)、跳轉(zhuǎn)語(yǔ)句基礎(chǔ)學(xué)習(xí)筆記作了一個(gè)整理:
    2016-06-06
  • swift學(xué)習(xí)文檔(筆記)

    swift學(xué)習(xí)文檔(筆記)

    這篇文章主要介紹了學(xué)習(xí)swift的筆記,swift最近也比較熱,需要的朋友可以參考下
    2014-09-09
  • SwiftUI中TabView組件的常規(guī)使用

    SwiftUI中TabView組件的常規(guī)使用

    這篇文章主要給大家介紹了關(guān)于SwiftUI中TabView組件的常規(guī)使用,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用SwiftUI具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-06-06
  • iOS Swift UICollectionView橫向分頁(yè)滾動(dòng),cell左右排版問(wèn)題詳解

    iOS Swift UICollectionView橫向分頁(yè)滾動(dòng),cell左右排版問(wèn)題詳解

    UICollectionView是iOS中比較常見(jiàn)的一個(gè)控件,這篇文章主要給大家介紹了關(guān)于iOS Swift UICollectionView橫向分頁(yè)滾動(dòng),cell左右排版問(wèn)題的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-12-12

最新評(píng)論