Heim > Backend-Entwicklung > Python-Tutorial > Was ist in Python gekapselt?

Was ist in Python gekapselt?

PHPz
Freigeben: 2023-09-02 15:21:06
nach vorne
1609 Leute haben es durchsucht

Was ist in Python gekapselt?

Kapselung ist eines der Schlüsselkonzepte in objektorientierten Sprachen wie Python und Java. Kapselung wird verwendet, um den Zugriff auf Methoden und Variablen einzuschränken. Bei der Kapselung werden Code und Daten in einer Einheit verpackt und vor versehentlicher Änderung geschützt.

Kapselung ist ein Mechanismus, der Daten (Variablen) und Code, der auf die Daten (Methoden) einwirkt, als Einheit zusammenfasst. Bei der Kapselung sind Variablen einer Klasse vor anderen Klassen verborgen und können nur über Methoden der aktuellen Klasse aufgerufen werden.

Paketbeispiel

Angenommen, wir haben ein Unternehmen, das Kurse an Studenten, Ingenieure und Fachleute verkauft. Zu den verschiedenen Abteilungen des Unternehmens gehören Betrieb, Finanzen, Buchhaltung, Vertrieb usw. Wenn nun ein Mitarbeiter in der Buchhaltung Umsatzunterlagen für das Jahr 2022 benötigt, hat er/sie keinen direkten Zugriff.

Für den Zugriff benötigen Mitarbeiter der Kundenabteilung die Erlaubnis eines Teammitglieds der Vertriebsabteilung. Daher sind Verkaufsdaten für andere Abteilungen verborgen. Ebenso sind die Finanzdaten des Unternehmens nur für Finanzdaten zugänglich und für andere Abteilungen verborgen. Konto-, Vertriebs-, Finanz-, Betriebs-, Marketing- und andere Daten sind vor anderen Teilen verborgen

Verwenden Sie Klassen, um die Kapselung in Python zu implementieren

Ein weiteres Beispiel für Kapselung sind Klassen, da Klassen Daten und Methoden in einer einzigen Einheit kombinieren. Hier zeigt die benutzerdefinierte Funktion demofunc() den Datensatz des Schülers an, in dem wir auf die öffentlichen Datenelemente zugreifen können. Mit den Objekten st1, st2, st3, st4 greifen wir auf die öffentliche Methode der Klasse demofunc() -

zu

Beispiel

class Students:
   def __init__(self, name, rank, points):
      self.name = name
      self.rank = rank
      self.points = points

   # custom function
   def demofunc(self):
      print("I am "+self.name)
      print("I got Rank ",+self.rank)

# create 4 objects
st1 = Students("Steve", 1, 100)
st2 = Students("Chris", 2, 90)
st3 = Students("Mark", 3, 76)
st4 = Students("Kate", 4, 60)

# call the functions using the objects created above
st1.demofunc()
st2.demofunc()
st3.demofunc()
st4.demofunc()
Nach dem Login kopieren

Ausgabe

I am Steve
I got Rank  1
I am Chris
I got Rank  2
I am Mark
I got Rank  3
I am Kate
I got Rank  4
Nach dem Login kopieren

Python-Zugriffsmodifikatoren

Sehen wir uns die Zugriffsmodifikatoren in Python an, um die Konzepte der Kapselung und des Verbergens von Daten zu verstehen< /p>

  • Öffentlich
  • Privat
  • Geschützt

Öffentlicher Zugriffsmodifikator

Auf öffentliche Mitglieder kann von innerhalb oder außerhalb der Klasse zugegriffen werden.

Privater Zugriffsmodifikator

Auf private Mitglieder kann nur innerhalb der Klasse zugegriffen werden. Definieren Sie private Mitglieder, indem Sie vor dem Mitgliedsnamen zwei Unterstriche hinzufügen, z. B.

__age
Nach dem Login kopieren

Geschützter Zugriffsmodifikator

Zugriff für geschützte Mitglieder. Aus einer Klasse und ihren Unterklassen. Definieren Sie geschützte Mitglieder, indem Sie vor dem Mitgliedsnamen einen Unterstrich hinzufügen, z. B.

_points
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas ist in Python gekapselt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage