Ich versuche, eine Referenz für die Standardsichtbarkeit verschiedener Aspekte von C # zu finden. Klassentypen, Felder, Methoden, Aufzählungen usw.
Kann jemand eine Liste dieser zusammen mit ihrer Standardsichtbarkeit bereitstellen (dh keinen Modifikator mit Präfix)?
Antworten:
Alle Informationen, die Sie suchen, finden Sie hier und hier (danke Reed Copsey ):
Vom ersten Link:
...
...
...
Vom zweiten Link:
Und für verschachtelte Typen:
quelle
Public
.Enum
Mitglieder sind auchPublic
. Es ist wahrscheinlich weniger verwirrend, in Ihrem Fall nur den expliziten Bereich zu verwenden, da die Chancen hoch sind, dass er irgendwann von c # -Entwicklern übersetzt oder gelesen wird. Die Codegenerierung in vb.net erledigt dies leider nicht für Sie.Von MSDN:
Top-Level - Typen , die nicht in anderen Typen verschachtelt, können nur haben
internal
oderpublic
Zugänglichkeit. Die Standardzugriffsmöglichkeit für diese Typen istinternal
.Verschachtelte Typen , die Mitglieder anderer Typen sind, können die in der folgenden Tabelle angegebenen Zugänglichkeiten deklariert haben.
Quelle: Barrierefreiheitsstufen (C # -Referenz) (6. Dezember 2017)
quelle
Standardmäßig ist der Zugriffsmodifikator für eine Klasse
internal
. Das heißt, auf eine Klasse kann innerhalb derselben Assembly zugegriffen werden. Wenn wir jedoch möchten, dass auf die Klasse von anderen Assemblys aus zugegriffen wird, muss sie veröffentlicht werden.quelle
[assembly:InternalsVisibleTo("Friend1b")]
Standardmäßig ist
private
. Klassen sind es, wenn sie nicht verschachtelt sindinternal
.quelle
enum members are private by default, so to use them outside the enum we should declare them as public
. Können Sie bitte erklären, warum das Buch Ihren Aussagen widerspricht? Vielen Dank.