Was ist der Unterschied zwischen dem internal
y private
Zugriffsmodifikatoren in C#?
Antworten
Zu viele Anzeigen?Nachstehend finden Sie eine Erklärung. Sie können diesen Link für weitere Details überprüfen - http://www.dotnetbull.com/2013/10/public-protected-private-internal-access-modifier-in-c.html
Privat: - Private Mitglieder sind nur innerhalb des eigenen Typs (eigene Klasse) zugänglich.
Intern: - Interne Mitglieder sind nur innerhalb der Baugruppe durch Vererbung (abgeleiteter Typ) oder durch Instanz der Klasse zugänglich.
Hinweis :
dotnetbull - was ist ein Zugriffsmodifikator in c#
internal
Mitglieder sind für den gesamten Code in der Assembly sichtbar, in der sie deklariert sind.
(Und zu anderen Baugruppen, auf die mit der Option [InternalsVisibleTo]
Attribut )
private
Mitglieder sind nur für die deklarierende Klasse sichtbar. (einschließlich verschachtelter Klassen)
Eine äußere (nicht verschachtelte) Klasse kann nicht deklariert werden private
da es keinen Bereich gibt, in dem es privat werden kann.
Um die Frage zu beantworten, die Sie vergessen haben zu stellen, protected
Mitglieder sind wie private
Mitglieder, sondern sind auch in allen Klassen sichtbar, die den deklarierenden Typ erben. (Aber nur bei einem Ausdruck von mindestens dem Typ der aktuellen Klasse)
Interne Mitglieder sind innerhalb der Baugruppe zugänglich (nur im selben Projekt)
private Mitglieder sind innerhalb der gleichen Klasse zugänglich
Beispiel für Anfänger
Es gibt 2 Projekte in einer Lösung (Projekt1, Projekt2) und Projekt1 hat einen Verweis auf Projekt2.
- Öffentliche Methoden, die in Projekt2 geschrieben wurden, werden in Projekt2 und Projekt1 zugänglich sein.
- Interne Methoden, die in Projekt2 geschrieben wurden, sind nur in Projekt2, nicht aber in Projekt1 zugänglich.
- private Methode, die in Klasse1 von Projekt2 geschrieben wurde, wird nur für dieselbe Klasse zugänglich sein. Sie wird weder in anderen Klassen von Projekt 2 noch in Projekt 1 zugänglich sein.
- See previous answers
- Weitere Antworten anzeigen