[Java Bronze-Lernen] Unterschied zwischen Kapselung, Ausblenden von Daten und Ausblenden von Informationen

Annahme

Verwendete Materialien </ b> ・ Einführung in Java, das aktualisiert wird ・ Java SE 7/8 Bronze Problem Collection (Kuromoto)

Es ist verwirrend beim Erlernen von Java Bronze! Ich werde die Konzepte "Kapselung", "Verstecken von Daten" und "Verstecken von Informationen" zusammenfassen, die ich dachte. Der Unterschied zwischen Kapselung, Ausblenden von Informationen und Ausblenden von Daten wird in "Einführung in Java, das klar verstanden werden kann" nicht klargestellt (die Begriffe "Ausblenden von Daten" und "Ausblenden von Informationen" erscheinen nicht an erster Stelle). Lesen Sie daher bitte den Inhalt des Java-Blackbooks. Ich werde.

Verkapselung

"1. Verwandte Daten sammeln" "2. Sammeln von Prozessen, die gesammelte Daten erfordern"

  • Die Kapselung wird durch Kombination mit Datenabschirmung vervollständigt.

Daten verstecken

"Keine direkte Manipulation von Feldern von außen zulassen"

Zweck: Aufrechterhaltung der Kapselung </ b>

Verhindert, dass die durch die Kapselung aggregierten Daten von anderen Modulen als dem Aggregat verwendet werden, um Beziehungen zu komplizieren.

Implementierungsmethode </ b>

  • Verbieten Sie Feldoperationen von außen, indem Sie den Zugriffsmodifikator privat machen -Wenn Sie auf das Feld zugreifen möchten, verwenden Sie eine Methode (Accessor-Methode) namens Getter oder Setter (nicht erforderlich).

Informationen verstecken

"Unterscheiden Sie zwischen dem, was veröffentlicht und privat gehalten werden soll"

Zweck: Beibehaltung des Abstraktionseffekts </ b>

Die Abstraktion vereinfacht die Beziehungen zwischen den Modulen. Wenn der "Benutzer" ein Modul für den "Benutzer" verwendet, das von der Abstraktion ignoriert werden sollte, wird die Beziehung kompliziert. Informationen werden blockiert, um dies zu vermeiden

Implementierungsmethode </ b> ・ Öffentlicher Teil → Als Schnittstelle veröffentlichen · Privater Teil → Kontrollieren Sie den unzulässigen Zugriff mithilfe von Paketzugriffsmodifikatoren

・ Beziehung zum Polymorphismus

  • Polymorphismus = eine Instanz abstrahieren und mit einem gemeinsamen Typ behandeln → Verstecken Sie Informationen, um zu verhindern, dass unnötige Teile von außen berührt werden, und erschweren Sie den abstrahierten und grob zusammengefassten Prozess.

Recommended Posts