Heim  >  Artikel  >  Java  >  Detaillierte Analyse von Zugriffsmodifikatoren in Java

Detaillierte Analyse von Zugriffsmodifikatoren in Java

高洛峰
高洛峰Original
2017-01-24 15:43:051603Durchsuche

1. Klassenmodifikatoren werden in zwei Typen unterteilt: zugängliche Steuerzeichen und nicht zugängliche Steuerzeichen.

Zugriffsfähige Steuerzeichen sind: öffentlicher Klassenmodifikator public

Nichtzugriffssteuerzeichen sind: abstrakter Klassenmodifikator abstract

1) Öffentlicher Klassenmodifikator public: Es gibt nur einen Zugriffskontrollmodifikator für eine Klasse in der Java-Sprache: public, der öffentlich ist. Die Hauptklasse jedes Java-Programms muss eine öffentliche Klasse sein. Als öffentliches Tool zur Verwendung durch andere Klassen und Programme sollte sie als öffentliche Klasse definiert werden.

2) Abstrakter Klassenmodifikator abstract: Jede mit dem abstrakten Modifikator modifizierte Klasse wird als abstrakte Klasse bezeichnet. Die sogenannte abstrakte Klasse bezieht sich auf eine konzeptionelle Klasse, die keine konkreten Objekte hat. Eine solche Klasse ist eine abstrakte Klasse der Java-Sprache.

3) Endklassenmodifikator final: Wenn eine Klasse keine Unterklassen haben kann, kann der Modifikator final verwendet werden, um sie als Endklasse anzugeben. Als final definierte Klassen sind in der Regel Klassen, die eine feste Rolle haben und zur Ausführung bestimmter Standardfunktionen verwendet werden.

4) Standard-Zugriffskontrollzeichen der Klasse: Wenn eine Klasse kein Zugriffskontrollzeichen hat, bedeutet dies, dass sie das Standard-Zugriffskontrollzeichen hat. Derzeit kann auf diese Klasse nur von Klassen im selben Paket zugegriffen oder darauf verwiesen werden. Diese Zugriffsfunktion wird auch Paketzugänglichkeit genannt.

2. Domänenkontrollmodifikatoren werden ebenfalls in zwei Kategorien unterteilt: zugängliche Steuerzeichen und nicht zugängliche Steuerzeichen.

Es gibt 4 Arten von Zugriffskontrollzeichen: öffentliches Zugriffskontrollzeichen: privat; geschütztes Zugriffskontrollzeichen: geschützt; privat geschützt

Es gibt 4 Arten von Zugriffskontrollmodifikatoren: statischer Domänenmodifikator: final; flüchtiger (gemeinsam genutzter) Domänenmodifikator: flüchtig

1) Öffentliches Zugriffskontrollsymbol öffentlich: Die mit public geänderte Domäne wird als öffentliche Domäne bezeichnet. Wenn ein öffentliches Feld zu einer öffentlichen Klasse gehört, kann es von allen anderen Klassen referenziert werden. Da der öffentliche Modifikator die Betriebssicherheit und die Datenkapselung verringert, sollte die Verwendung öffentlicher Felder generell reduziert werden.

2) Privates Zugriffskontrollzeichen privat: Mit private geänderte Mitgliedsvariablen (Domänen) können nur von der Klasse selbst aufgerufen werden und können von keiner anderen Klasse (einschließlich Unterklassen) referenziert werden.

3) Protected-Zugriffskontrollzeichen protected: Mit protected geänderte Mitgliedsvariablen können von drei Kategorien referenziert werden: ① der Klasse selbst; ② anderen Klassen im selben Paket wie dieser; ③ in anderen Paketen. Der Hauptzweck der Verwendung des geschützten Modifikators besteht darin, seinen Unterklassen in anderen Paketen den Zugriff auf bestimmte Eigenschaften der übergeordneten Klasse zu ermöglichen.

4) Private protected Zugriffskontrollzeichen private protected: Mit dem Modifikator private protected geänderte Mitgliedsvariablen können von der Klasse selbst oder Unterklassen der Klasse aufgerufen und referenziert werden.

5) Statischer Domänenmodifikator static: Mit Static geänderte Mitgliedsvariablen gehören nur zu den Variablen der Klasse und nicht zu einem bestimmten Objekt. Der Wert der statischen Mitgliedsvariablen ist ein öffentlicher Speicher Speicherbereich der Klasseneinheit, anstatt im Speicherbereich eines bestimmten Objekts gespeichert zu werden. Wenn ein Objekt einer beliebigen Klasse darauf zugreift, erhält es dieselben Daten. Wenn ein Objekt einer beliebigen Klasse diese ändert, operiert es auch auf derselben Speichereinheit.

6) Endgültiger Domänenmodifikator final: Der endgültige Domänenmodifikator final wird zum Definieren symbolischer Konstanten verwendet. Wenn ein Feld (Mitgliedsvariable) einer Klasse durch den Modifikator final deklariert wird, bleibt sein Wert während der gesamten Ausführung des Programms unverändert.

7) Flüchtiger (gemeinsam genutzter) Domänenmodifikator volatile: Der flüchtige (gemeinsam genutzte) Domänenmodifikator volatile wird verwendet, um anzuzeigen, dass diese Mitgliedsvariable von mehreren Threads gesteuert und geändert werden kann. Das heißt, während der Ausführung des Programms kann diese Mitgliedsvariable von anderen Programmen beeinflusst werden oder ihren Wert ändern. Daher sollten Sie auf die Wertänderungen dieser Mitgliedsvariablen während der Verwendung achten. Normalerweise wird volatile zum Ändern von Feldern verwendet, die externe Eingaben akzeptieren.

8) Temporärer Domänenmodifikator transient: Der transiente Domänenmodifikator transient wird verwendet, um eine temporäre Variable zu definieren. Seine Merkmale sind: Eine mit dem Modifikator transient qualifizierte temporäre Variable bestimmt die Java Virtual Machine, um zu bestimmen, dass die temporäre Variable nicht zu einem permanenten Zustand gehört, um die Archivierungsfunktion verschiedener Objekte zu realisieren. Andernfalls sind alle Variablen in der Klasse Teil des permanenten Zustands des Objekts und müssen beim Speichern des Objekts gespeichert werden.

3. Die Steuermodifikatoren von Methoden werden ebenfalls in zwei Kategorien unterteilt: zugängliche Steuerzeichen und nicht zugängliche Steuerzeichen.

Es gibt 4 Arten von Zugriffskontrollzeichen: öffentliches Zugriffskontrollzeichen: privat; geschütztes Zugriffskontrollzeichen: geschützt; privat geschützt

Es gibt 5 Arten von Zugriffskontrollzeichen: abstraktes Methodensteuerzeichen: statisches Methodensteuerzeichen: synchronisiertes Methodensteuerzeichen: nativ; 1) Abstrakter Methodenkontrolloperator abstrakt: Eine mit dem abstrakten Modifikator modifizierte Methode wird als abstrakte Methode bezeichnet. Eine abstrakte Methode ist eine Methode mit nur einem Methodenheader und ohne Methodenkörper und Operationsimplementierung.

2) Statisches Methodensteuerzeichen static: Eine mit dem Modifikator static geänderte Methode wird als statische Methode bezeichnet. Statische Methoden sind Klassenmethoden, die zur gesamten Klasse gehören. Methoden, die nicht durch statische Methoden modifiziert oder qualifiziert werden, sind Methoden, die zu einem bestimmten Klassenobjekt gehören. Da die statische Methode zur gesamten Klasse gehört, kann sie keine Mitgliedsvariablen bearbeiten und verarbeiten, die zu einem Objekt gehören, sondern nur Mitgliedsvariablen, die zur gesamten Klasse gehören. Das heißt, die statische Methode kann nur die statische Domäne verarbeiten.

3) Final-Methodensteuerzeichen final: Eine mit dem Modifikator final modifizierte Methode wird als Final-Methode bezeichnet. Eine finale Methode ist eine Methode, deren Funktionalität und interne Anweisungen nicht geändert werden können, d. h. eine finale Methode kann nicht überladen werden. Auf diese Weise werden die Funktionen und Operationen dieser Methode festgelegt, wodurch verhindert wird, dass Unterklassen der aktuellen Klasse Schlüsselmethoden der übergeordneten Klasse falsch definieren, und die Sicherheit und Korrektheit des Programms gewährleistet wird. Alle durch den privaten Modifikator als privat qualifizierten Methoden und alle in einer finalen Klasse enthaltenen Methoden gelten als finale Methoden.

4) Steuerzeichen für native Methoden „nativ“: Eine mit dem Modifikator „nativ“ geänderte Methode wird als lokale Methode bezeichnet. Um die Ausführungsgeschwindigkeit des Programms zu verbessern, ist es notwendig, den Methodenkörper des Programms in anderen Hochsprachen zu schreiben. Anschließend kann die Methode als lokale Methode definiert und mit dem Modifikator native
5) Synchronisiertes Methodensteuerungssymbol synchronisiert: Diese Modifikationssymbole werden hauptsächlich zur Koordination und Synchronisation in Multithread-Programmen verwendet.

Eine detailliertere Analyse von Zugriffsmodifikatoren in Java und verwandte Artikel finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
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