簡體   English   中英

C#中的訪問修飾符

[英]Access modifiers in C#

我正在教自己C#,我遇到了一些模棱兩可的情況。

我正在嘗試做的是為一些數據創建一個容器類,相當直接,但我試圖尊重封裝,並且只能通過setter和getter訪問數據。 所以我正在閱讀有關訪問修飾符的內容,根據此MSDN文章 ,默認訪問級別為內部。 我來自Java-land所以我不熟悉內部,但是從該頁面上的資源來看,內部看起來比我想要的更寬松。 所以我想把東西設為私人。

我的困惑來自這里的代碼示例。 看起來如果我這樣做

class whatever {
    private int thing;
    string ambiguous; 
}

模棱兩可的變量將是私有的,而不是內部的。

它真的像那樣工作嗎? 或者第二個例子寫錯了?

該領域ambiguous並不含糊。 C#規范聲明,如果類成員沒有訪問修飾符,則默認為private

頂級類型的默認訪問級別是內部的。

class Foo {
    int bar;
    class Nested {
        int baz;
    }
}

相當於

internal class Foo {
    private int bar;
    private class Nested {
        private int baz;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM