簡體   English   中英

在 c# 中,方法默認是私有的嗎?

[英]in c# are methods private by default?

如果我有一個沒有指定其可訪問性級別的方法,它會默認為私有嗎?

void Item_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
    throw new NotImplementedException();
}        

上面的方法是私有的嗎?

它是。 如果您沒有定義任何修飾符,則一般規則是“使用此處可以應用的最受限制的修飾符”,因此對於方法是私有的,對於頂級類是內部的等等。

是的,它是私人的。

對於類中的方法,默認為private。 它確實根據聲明事物的范圍而變化,這里是具有更多細節的MSDN鏈接

是的,對於方法,就像您的示例一樣。

Class 和結構成員,包括嵌套類和結構,默認情況下具有私有訪問權限。

但這並不適用於所有訪問修飾符:

直接在命名空間內聲明的類、記錄和結構(換言之,未嵌套在其他類或結構中)可以是公共的或內部的。 如果未指定訪問修飾符,則默認為 internal。

我認為這是個好主意,因為在 OO 中默認情況下,所有內容都應該是私有的,只有真正需要的才應該標記為公開。

https://learn.microsoft.com/en-us/do.net/csharp/programming-guide/classes-and-structs/access-modifiers

暫無
暫無

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

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