1. Was ist die Kapselung?
Die Kapselung ist eines der grundlegenden Prinzipien der Objekt -orientierten Programmierung (POO), die es ermöglicht, die Implementierungsdetails eines Objekts zu verbergen. Dies bedeutet, dass Sie die interne Implementierung eines Objekts ändern können, ohne andere Teile des Systems zu beeinflussen, die damit interagieren. Diese Funktion fördert die Modularität und Leichtigkeit bei der Pflege von Code in der Zukunft.
2. Warum Kapselung verwenden?
Die Verwendung der Kapselung wird aus mehreren Gründen als gute Praxis angesehen:
- leicht chirurgische Wartung : Änderungen in der Implementierung einer Klasse können vorgenommen werden, ohne den Code zu ändern, der diese Klasse verwendet, da die öffentliche Schnittstelle gleich bleibt.
Datenschutz - : Verhindert den direkten Zugriff auf die internen Daten eines Objekts, wodurch die Integrität des Objekts des Objekts geschützt wird.
Konsistenz und Vorhersagbarkeit
: Stellt sicher, dass Methoden und Attribute konsistent verwendet werden, um unerwünschte Änderungen zu vermeiden.
-
3. Wie verkapseln Sie?
Die Kapselung wird von
auf modifikatoren
implementiert, was die Sichtbarkeit einer Klassenattribute und -methoden einschränkt. Die Hauptzugriffsmodifikatoren sind:
privat
: Attribute und Methoden sind nur innerhalb der Klasse selbst zugänglich.
- geschützt : Attribute und Methoden sind in der Klasse selbst und in Unterklassen zugänglich.
public - : Attribute und Methoden können von jedem Teil des Codes zugegriffen werden.
4. Wie kann man eine Kapselung machen?
- Um Attribute einer Klasse zu verkörpern, deklarieren Sie sie als privat . In der Personklasse wird beispielsweise das Namensattribut wie folgt eingekapselt:
paket Beispiele.pooo.ex;
Person der öffentlichen Klasse {
Privater Zeichenfolge Name;
// Methode zum Zugriff auf das Namensattribut
Public String getName () {
Rückgabename;
}
// Methode zum Ändern des Namensattributs
Public void setName (String Name) {
this.name = name;
}
}
Zugriff auf private Attribute
auf private Attribute können über Methoden
Getter
und
package exemplos.poo.ex;
public class Pessoa {
private String nome;
// Método para acessar o atributo nome
public String getNome() {
return nome;
}
// Método para modificar o atributo nome
public void setNome(String nome) {
this.nome = nome;
}
}
zugegriffen werden. Diese Methoden bieten eine Möglichkeit, Attribute zuzugreifen oder zu manipulieren, da sie einen Modifikator haben können, der den anderen Klassenzugriff auf dieses Attribut einschränkt, wie es bei
privat
unter Beachtung der Kapselung der Fall ist:
Getter : Methode, die den Wert eines Attributs zurückgibt.
setzter
: Methode, mit der Sie den Wert eines Attributs ändern können.
-
5. Wann kann die Kapselung verwendet werden?
Die Kapselung sollte nach Möglichkeit in Poo angewendet werden, da sie eine Reihe von Vorteilen bietet:
-
data Protection
: stellt sicher, dass die internen Daten eines Objekts nicht direkt zugegriffen werden.
modificability
: erleichtert die code modification, ohne andere Teile des Systems zu beeinflussen.
codes reusse
: erleichtert die Erstellung von Klassen, die in verschiedenen Kontexten wiederverwendet werden können.
-
Testabilität : Hilft, Teile des Code zu isolieren und Tests einfacher und effektiver zu machen.
- Security : Reduziert das Risiko von unerwünschten Manipulationen auf interne Daten.
Abschluss
-
Die Kapselung ist eine wesentliche Praxis in der von Objekteorientierten Programmierung, die hilft, robuster, sichere und einfach zu verwaltende Systeme zu erzeugen. Durch die Verwendung von Zugriffsmodifikatoren und Gettern und Setzer können Sie den Zugriff auf Attribute steuern und eine sicherere und vorhersehbare Interaktion zwischen Objekten fördern.