Zugriffs- und Mutators in Java- How it works?

Accessor & Mutator

Accessor & Mutator

Übersicht: In diesem Artikel werden wir über java Accessoren diskutieren. Zugriffsmethoden sind grundsätzlich Member-Funktionen, die zugegriffen wird und die Feldwerte manipulieren. Wir werden auch die Vor- und Nachteile der Verwendung von Accessoren in Java-Anwendung zu diskutieren.








Einführung: Accessoren in Java macht es robust und modular. Das Konzept ist einfach, aber sehr mächtig für jede Anwendungsentwicklung. Wie wir wissen, dass Accessoren grundsätzlich Member-Funktionen sind, die zugegriffen wird und die Feldwerte ändern. Zur gleichen Zeit Accessoren fügen Sie eine zweite Schicht auf der Feldvariablen so ist es ein wenig Aufwand. Aber es hilft, um die Details der Implementierung der Klassen und ihre Komponenten zu verbergen. So wird die Flexibilität erhöht vielfältig und das Design ist auch effizienter. Java-Accessor kommt in zwei Varianten, Setter und Getter. Ein Setter wird verwendet, Feldwert zu setzen und Getter wird verwendet, um den Feldwert zu erhalten.

Ein weiterer wichtiger Aspekt ist die Sichtbarkeit von Accessoren. Accessoren können verschiedene Arten von Sichtbarkeit auf der Basis der Zugriffsspezifikation zu ihnen hinzugefügt. So ist es auch die Anwendung hilft unterschiedliche Zugriffsebene zu setzen, wie pro die Anforderung der Anwendung. Als Accessoren einfache Funktionen Java-Mitglied sind, so ist es wichtig, die richtige Sicht auf effiziente Weise zuzuordnen, die den Entwurf für die Anwendung als Ganzes zu verbessern. Es gibt im Wesentlichen vier Ebenen der Sichtbarkeit zur Verfügung wie öffentliche, protected, Private, und Standard, und sie sind mit unterschiedlichen Zweck.

Vorteile von Accessoren: Wir haben bereits diskutiert, den Zweck der Accessoren in Java-Anwendung. Jetzt werden wir ausführlich über die Vorteile von Accessoren diskutieren.

  • Einziger Kontaktpunkt: Accessor bietet Single Point of Contact für jedes Attribut in der Anwendung. Es hilft, zu ändern und die Eigenschaft testen effizienter. Von objektorientierte Sicht, die Anwendung Attribute sind gekapselt.
  • Verzögerte Initialisierung: Der faule Initialisierung ist ein wichtiges Konzept in Java-Anwendung. Das Konzept besteht darin, die Daten zu laden, wenn es zuerst zugegriffen wird,. So zum Beispiel,, laufen Ihre Anwendung könnte aber Sie nicht etwas bestimmtes Attribut Wert benötigen. In dieser Situation den Attributwert bevöl hält keine Bedeutung und es wird nicht in der Anwendung verwendet werden,. Diese werden aber nicht notwendig halten die Erinnerung. Also, wenn wir faul Initialisierungstechnik gelten dann laden wir nur die Daten, wenn sie zum ersten Mal aufgerufen wird. Durch die Verwendung von Accessoren, wir können faul Initialisierung effizient zu steuern und damit die Anwendung effizienter zu gestalten. Nachteilig ist,, Ihre Anwendung wird komplex, weil Sie überprüfen müssen, wenn das Attribut einen Wert oder nicht hält und dann seinen Wert zu erhalten. Verzögerte Initialisierung ist hilfreich, wenn es einige teure Berechnung ist erforderlich, um das Attribut zu füllen. Aber noch einmal die gesamte Auswahl hängt von der Anforderung der Anwendung.
  • Komplette Kontrolle: Der Entwickler hat die vollständige Kontrolle über die Anwendung Attribute. So dass der Zugriff auf diese Attribute können an jedem Punkt der Zeit je nach Anforderung geändert werden. Zutrittskontrolle hilft auch bei der Gestaltung des Applikations.
  • Leichte Anpassung an Geschäftsregeln: Wenn es Voraussetzung ist, sind die Geschäftsregel dann Accessoren zu ändern sehr hilfreich. Als Accessoren sind Einkapseln der Attribute, jede Änderung oder Änderung dieser Attribute haben keinen Einfluss auf die Anruffunktionen. So sind die neuen Geschäftsregeln können leicht implementiert werden, ohne die dazugehörigen Komponenten zu beeinflussen. Die Accessoren machen es flexibler.
  • Reduzieren Kupplung Ausgabe: Bei normaler Anwendung Kopplung zwischen Superklasse und Unterklasse ist ein wichtiges Thema. Wenn Sie etwas in der Superklasse ändern dann hat es einen direkten Einfluss auf die Unterklasse. Aber wenn die Unterklasse Zugriff auf die Attribute, indem Sie die Zugriffsmethoden verwenden, dann alle Änderungen an der Umsetzung der Super-Klasse-Attribut hat keine Auswirkungen auf die Unterklasse. So ist die Kopplung Problem wird reduziert und erhöht somit die Flexibilität des Anwendungsdesign.
  • Verkapselung von Validierungslogik: Einige Zeit, dass wir eine Anforderung haben einige Validierung durchgeführt werden, bevor wir die Daten aktualisieren oder zu speichern. Damit wird eines der besten Orte, um diese Validierungslogik zu setzen Methode innerhalb Accessor (insbesondere Setter-Methode). Wir können auch die Vorteile von Zugriffsmodifikator zusammen mit Accessormethoden etwas eingeschränkten Zugang zu setzen und die Validierungslogik prüfen.
  • Überwinden Sie Name Versteck Ausgabe: Wir haben eine gemeinsame Praxis die lokalen Variablen denselben Namen wie die Attribute zu geben,. Dies löst ein Problem von verschiedenen Namenskonflikt. Aber der Einsatz von Accessoren mildern dieses Problem, da wir die Attribute direkt keine Chance haben, den Zugriff auf. Also was auch immer der Name der lokalen Variablen wir nicht brauchen, um es zu sorgen. Die Accessoren setzt sie automatisch.
  • Ausblenden rückgängig machen und Logik-Redo: Wenn Ihre Anwendung eine Anforderung der Änderung des Wertes von einigen Attribut hat und dann auf den alten Wert wieder zurück, dann sind mit Accessoren sehr hilfreich.
  • Die Verwendung von Getter-Accessor für Konstanten: Im normalen Java-Programmierung, jede Konstante wird als statisch definiert Finale. Und dann wird sie in der Anwendungscode als Konstante. Aber der Nachteil ist, dass, wenn der Wert der Konstanten ändert, dann muss man es in jeder Zeile zu ändern, wo immer er wird verwendet,. So ist der traditionelle Ansatz ist gut an Orten, wo es keine Chance, den Wert der Konstanten zu ändern. Aber wenn der konstante Wert auf einige Berechnung oder Geschäftslogik hängt dann der bessere Weg ist statische Getter zu verwenden, darauf zuzugreifen. So Anwendung Verkapselung für konstanten Wert in statischen Getter-Methode gibt stabilere Lösung und das Design ist auch modular und lose gekoppelten. Der Vorteil ist, dass Sie es nicht in jeder Zeile ändern müssen, aber nur in der Getter-Methode. Und es folgt auch die objektorientierte Regel von Informationen versteckt. Das ist also eine neue Art des Zugriffs wie Getter-Methode verwendet, die eine hohe Flexibilität zur Anwendungsentwicklung gibt. Und in diesem Szenario müssen Sie nicht über die Setter-Methode zu ändern.









Es folgt ein Beispiel für Java-Accessoren. Der Code ist eine Bulk-Setter-Methode implementiert, um die Leistung der Accessor die Umsetzung zu verbessern.

Listing 1: Die Probe zeigt eine Bulk-Accessoren Implementierung

[Code]

/* JavaAccessors.java

* Thsis ist ein Beispiel für Bulk-Setter und ein versengen Getter-Methode.

*/

/**

* @author Kaushik Pal

*/

public class JavaAccessors {

// Lokale Variablen

String name;

String address;

String Alter;

String totalstring;

/** Erstellt eine neue Instanz von JavaAccessors */

Öffentlichkeit JavaAccessors() {

}

/**

* Gibt den konsolidierten String-Wert.

*/

public String getTitle()

{

wenn ( Name != null && Adresse != null && Alter!= null) {

// Bauen Sie die gesamte Zeichenfolge

totalstring = “Name ist :”+Name ” Die Adresse ist :”+Adresse ” Das Alter ist :”+Alter;

}

Rückkehr this.totalstring;

}

/**

* Dies ist ein Bulk-setter

* Legt den Namen, Adresse und Alter

* @param name, Adresse, Alter

*

**/

private void setTitle(String name,String address,String Alter)

{

this.name = name;

this.address = address;

this.age = Alter;

}

public static void main(Schnur[]args)

{

// Erstellen Sie neue Instanz

JavaAccessors jvaccessor = new JavaAccessors();

// Verwenden Sie Bulk-Setter

jvaccessor.setTitle(“Jhon”,”USA”,”32″);

// Holen Sie sich das konsolidierte Ausgabe

String newname = jvaccessor.getTitle();

System.out.println(“Neuer String-Wert ist :”+ neuer Name);

}

}

[/Code]

Wenn nicht Accessoren zu verwenden: Wir haben bereits diskutiert, die Bereiche, in denen Accessoren umgesetzt werden können. Wir haben auch erklärt, dass korrekte Umsetzung der Accessoren machen die Anwendung robuster, flexibel und verwaltbar. Jetzt werden wir einige Bereiche diskutieren, wo Accessor kein beste Lösung ist. In einigen Anwendungen, Ausführungszeit ist von höchster Bedeutung, und es Verwendung von Accessor könnte den Prozess langsam und schlechte Reaktionszeit machen. Aber dieses Szenario ist selten und wenn entsteht dann sollten wir denken einige alternative Lösung. Der andere Weg Accessor effizienter zu machen ist Bulk-Accessor verwenden. Bulk-Accessor kann als Accessor definiert werden, die auf mehrere Attribute eher eine zu einem Zeitpunkt arbeitet. So ist der Vorteil ist, dass die Arbeit in einem Schuss im Vergleich zum Aufruf mehrere Zugriffs- und / set erhalten erfolgt Attributwerte. Und ein weiterer wichtiger Punkt ist, dass die Accessoren sind nicht unbedingt öffentlich machen müssen. Einige Zeit können wir auch sie als privat oder geschützt, wenn erforderlich.

Im Folgenden sind einige Regeln, die befolgt werden, wenn der Zugang zu den Zugriffs- unter Berücksichtigung

  • Versuchen Sie immer, die Accessoren geschützt zu halten. Es wird nur sichtbar zu machen in Unterklassen
  • Wenn Unterklasse nicht die Attribute zugreifen müssen dann machen Accessoren privat
  • Wenn einige externe Klassen Attribute müssen dann nur Zugriff auf die öffentliche Nutzung

Fazit: In diesem Artikel werden wir haben java accesors und deren Umsetzung. Wir haben auch über die Robustheit und Flexibilität von Java-Anwendung diskutiert, während Accessoren mit. Aber einige Zeit könnte es einen Overhead sein, wenn einige komplexe Berechnung durchgeführt wird, und die Anwendung benötigt schnelle Reaktionszeit. So können wir feststellen, dass die Accessoren eine leistungsstarke Funktion in Java, aber ihre Umsetzung sollte sorgfältig durchgeführt werden.







Stichworte:, ,
============================================= ============================================== Buy best TechAlpine Books on Amazon
============================================== ---------------------------------------------------------------- electrician ct chestnutelectric
error

Enjoy this blog? Please spread the word :)

Follow by Email
LinkedIn
LinkedIn
Share