Einführung in die objektorientierten Funktionen von Java
Feb 05, 2020 pm 05:54 PMDie drei wichtigsten objektorientierten Funktionen von Java:
Kapselung, Vererbung und Polymorphismus.
1. Kapselung
Versteckt die Klasseninformationen innerhalb der Klasse und erm?glicht keinen direkten Zugriff durch externe Programme. Stattdessen werden die verborgenen Informationen durch die von bereitgestellten Methoden implementiert die Klasse. Operationen und Zugriff.
Implementierungsschritte der Kapselung:
Sichtbarkeit von Attributen ?ndern: Auf privat setzen
Getter/Setter-Methoden erstellen: zum Lesen und Schreiben von Attributen
Attributkontrollanweisungen zu den Getter/Setter-Methoden hinzufügen: Beurteilen Sie die Rechtm??igkeit des Attributwerts
(empfohlenes Lernen: Java-Video-Tutorial)
Verwendung privat, um die Sichtbarkeit von Attributen zu ?ndern, zum Beispiel:
//表示讀取該方法中的screen public float getScreen{ return screen; } //有viod無返回值,變量名.屬性=值,就不能直接調(diào)用可以通過變量名.getScreen()來實(shí)現(xiàn) public viod setScreen(float newScreen){ screen = newscreen; }
Variablenname = Wert kann nicht direkt über den Variablennamen aufgerufen werden.
Funktion des Pakets:
1. Java-Dateien verwalten
2. Dateikonflikte mit demselben Namen l?sen
Paket definieren : package
Paketname Hinweis: Er muss in der ersten Zeile des Java-Quellprogramms platziert werden. Paketnamen k?nnen durch ?.“ getrennt werden. Beispiel: in com.imooc.MyClassJava, der Namenskonvention von Pakete werden ausschlie?lich in Kleinbuchstaben geschrieben.
Zugriffskontrollmodifikatoren in Java
?ffentlich, Standard, geschützt, privat
?ffentlich: ?ffentlich, für alle Klassen zug?nglich
Standard: Standardmodifikator, Zugriff innerhalb desselben Pakets
geschützt: geschützter Typ.
privat: private Klasse, nur diese Klasse kann darauf zugreifen
final, schlie?lich finalisieren (erben)
final: Modifikator. Die durch diesen Modifikator ge?nderte Klasse kann nicht vererbt werden. Die durch diesen Modifikator ge?nderte Variable kann nur verwendet, überladen und nicht neu geschrieben werden abstrakte Klassen.
finally: Bereinigungsvorgang nach dem Abfangen einer Ausnahme
finalize: Eine Methode, haupts?chlich bevor der GC das Objekt l?scht. Rufen Sie zuerst die finalize-Methode für das Objekt auf, um festzustellen, ob auf das Objekt verwiesen wird
Dieses Schlüsselwort in Java
//原來手動(dòng)輸入 public void setScreen( float newScreen){ screen = newScreen; } // 用eclips 自動(dòng)生成的是 public void setScreen( float newScreen){ this.screen = screen; }
this. Attribut: Manipulieren Sie die Eigenschaften des aktuellen Objekts
this Methode: Rufen Sie die Methode des aktuellen Objekts auf
Ecilipse kann Setter- und Getter-Methoden direkt generieren und das Schlüsselwort this hinzufügen.
Dieses Schlüsselwort ruft Mitgliedsvariablen oder Mitgliedsmethoden auf. Dieses und Super-Schlüsselw?rter k?nnen nicht in statischen Methoden verwendet werden. Gleichzeitig k?nnen Sie auch einen Verweis auf die Klasse zurückgeben und den Konstruktor
Statische innere Klassen in Java
Statische innere Klassen sind statisch modifizierte innere Klassen. Die Merkmale dieser inneren Klasse sind: 1 Greifen Sie auf externe Klassen zu, aber der Zugriff erfolgt über neue ?u?ere Klassen (). 2. Wenn die statischen Mitglieder der ?u?eren Klasse denselben Namen haben wie die Mitglieder der inneren Klasse, k?nnen Sie über ?Klassenname.statisches Mitglied“ auf die statischen Mitglieder der ?u?eren Klasse zugreifen Mitglieder der ?u?eren Klasse haben denselben Namen wie Mitglieder der inneren Klasse. Wenn sie nicht identisch sind, k?nnen Sie die statischen Mitglieder der externen Klasse direkt über den ?Mitgliedsnamen“ aufrufen. 3. Wenn Sie ein Objekt einer statischen inneren Klasse erstellen, ben?tigen Sie kein Objekt einer ?u?eren Klasse. Sie k?nnen direkt ein Objekt der inneren Klasse erstellen = neue innere Klasse ();.2. Vererbung
Das Konzept der Vererbung: Es ist eine Beziehung zwischen Klassen. Vorteile der Vererbung: 1) Die Unterklasse verfügt über alle Eigenschaften und Methoden der übergeordneten Klasse (private ?nderung ist ungültig) 2) Implementieren Sie die CodereproduktionGrammatikregeln: Die Unterklasse der Klasse erweitert die übergeordnete Klasse { }
Umschreiben von Methoden:
Die Unterklasse ist mit der Vererbung der übergeordneten Klasse nicht zufrieden und schreibt ihre neu Eigener Inhalt und nach dem Umschreiben wird zuerst die Unterklassenmethode aufgerufenGrammatikregeln:
Der Rückgabewert, der Typ, der Methodenname und die Parametertypnummer müssen gleich sein als Integrationsmethode der übergeordneten Klasse wird als überschreiben bezeichnetErben Sie die Initialisierungssequenz:
Attributinitialisierung der übergeordneten Klasse>Konstruktionsmethode der übergeordneten Klasse>Initialisierung des Attributs der Unterklasse>Konstruktionsmethode der Unterklasse 0Super-Schlüsselwort:
wird innerhalb des Objekts verwendet und kann das übergeordnete Klassenobjekt darstellen. Zugriff auf die Attribute der übergeordneten Klasse: super.age;Zugriff auf die Methode der übergeordneten Klasse: super.eat();Anwendung von super :
W?hrend der Konstruktionsmethode der Unterklasse muss die Konstruktionsmethode der übergeordneten Klasse aufgerufen werden. Wenn der Konstruktor der Unterklasse nicht explizit den Konstruktor der übergeordneten Klasse aufruft, ruft das System standardm??ig den Konstruktor ohne Argumente der übergeordneten Klasse auf. Wenn Sie den Konstruktor explizit aufrufen, muss er in der ersten Zeile des Konstruktors der Unterklasse stehen. Wenn der Konstruktor der Unterklasse den Konstruktor der übergeordneten Klasse nicht explizit aufruft und die übergeordnete Klasse keinen Konstruktor ohne Parameter hat, tritt ein Kompilierungsfehler auf.Objektklasse:
Eine Klasse ohne Identifikation entspricht der Erbung der ObjektklassetoString()-Methode:
Der Hash-Code (Objektadresszeichenfolge) des zurückgegebenen Objekts, wenn die toString()-Methode in der Object-Klasse definiert wirdSie k?nnen das Objekt ausdrücken, indem Sie das Attribut der toString()-Methode überschreibenequals() Methode:
Der Vergleich besteht darin, ob die Objektreferenzen auf dieselbe Speicheradresse verweisen. Hinweis: Die Methode equal() ist beim Vergleich zweier Objekte nicht anwendbar. Wenn ein neues Objekt erstellt wird, wird eine neue Speicheradresse im Speicher erstellt. Daher sind sie zum Vergleichen nicht gleich Damit die spezifischen Attributwerte der Objekte gleich sind, müssen Sie die Methode equal()
erneut schreiben und getClass() vergleichen, um das Klassenobjekt zurückzugeben:
getClass() gibt das Klassenobjekt zurück: die Codeinformationen, die die Klasse beschreiben, die Attribute der Klasse sind Welche, was ist der Typ, was ist der Variablenname, was ist der Methodenname, was ist mehr wichtig? Codeinformationen der Klasse.
Das Erstellen eines Objektnamens gibt ein Objekt der Klasse zurück:
Konzentrieren Sie sich auf die Attributwertinformationen des Objekts oder die Informationen der Objektdaten
3. Polymorphismus
Polymorphismus: bezieht sich auf die verschiedenen Formen von Objekten, haupts?chlich unterteilt in Referenzpolymorphismus und Methodenpolymorphismus.
Vererbung ist die Grundlage für Polymorphismus. Vergessen Sie nicht, dass zwischen untergeordneten und übergeordneten Klassen eine Vererbungsbeziehung bestehen muss.
Polymorphe Merkmale:
1. Zitat-Polymorphismus
Die Referenz der übergeordneten Klasse kann auf das Objekt dieser Klasse Animal obj1 = new Animal();
Die Referenz der übergeordneten Klasse kann auf das Objekt der Unterklasse Animal obj2 = verweisen new Dog();
Aber wir k?nnen die Referenz der Unterklasse nicht verwenden, um auf das übergeordnete Klassenobjekt Dog obj3 = new Animal();//Fehler
2 >
Definieren Sie eine eat()-Methode in der Klasse ?Animal“ und geben Sie eine Anweisung aus (Tiere haben die F?higkeit zu fressen). Schreiben Sie die eat()-Methode in der Unterklasse ?Dog“ neu und geben Sie eine Anweisung aus (Hunde fressen Fleisch). Funktion der Testklasse, wenn obj1.eat( ), dann wird die Methode der übergeordneten Klasse aufgerufen. Wenn obj2 zum Aufrufen der eat()-Methode verwendet wird, wird die Methode der Unterklasse aufgerufen. Es gibt eine andere Situation, beispielsweise das Erstellen einer Unterklasse Cat, die die übergeordnete Klasse Animal erbt, aber Cat überschreibt die geerbte eat()-Methode nicht. Dann erstellen wir eine Unterklasse in der Hauptfunktion der Testklasse Object, Animal obj3 = new Cat(); und dann aufrufen obj3.eat(); Das Ergebnis ist, dass die Unterklasse die Methode der übergeordneten Klasse erbt (Ausgabeergebnis: Das Tier hat die F?higkeit zu essen). Im letzten Sonderfall kann die polymorphe Funktion nicht verwendet werden. Wenn Sie der Unterklasse eine eindeutige Methode public void watchDoor() hinzufügen, enth?lt diese eine Ausgabeanweisung (der Hund hat die F?higkeit, die Tür zu überwachen). ; Dann k?nnen wir in der Hauptfunktion der Testklasse (wir müssen zuerst das Objekt Animal obj2 = new Dog() definieren) nicht obj2.watchDoor() verwenden, das hei?t, wir k?nnen die Methode der Unterklasse nicht über die Referenz aufrufen die übergeordnete Klasse. Empfohlene verwandte Artikel und Tutorials:Das obige ist der detaillierte Inhalt vonEinführung in die objektorientierten Funktionen von Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Um JDBC -Transaktionen korrekt zu verarbeiten, müssen Sie zun?chst den automatischen Komiti -Modus ausschalten und dann mehrere Vorg?nge ausführen und schlie?lich entsprechend den Ergebnissen festlegen oder rollen. 1. Nennen Sie Conn.SetAutoCommit (False), um die Transaktion zu starten. 2. Führen Sie mehrere SQL -Operationen aus, z. B. einfügen und aktualisieren. 3. Rufen Sie Conn.Commit () an, wenn alle Vorg?nge erfolgreich sind, und rufen Sie Conn.Rollback () auf, wenn eine Ausnahme auftritt, um die Datenkonsistenz zu gew?hrleisten. Gleichzeitig sollten Try-with-Ressourcen verwendet werden, um Ressourcen zu verwalten, Ausnahmen ordnungsgem?? zu behandeln und Verbindungen zu schlie?en, um Verbindungsleckage zu vermeiden. Darüber hinaus wird empfohlen, Verbindungspools zu verwenden und Save -Punkte zu setzen, um teilweise Rollback zu erreichen und Transaktionen so kurz wie m?glich zu halten, um die Leistung zu verbessern.

Verwenden Sie Klassen im Java.Time -Paket, um das alte Datum und die Kalenderklassen zu ersetzen. 2. Erhalten Sie das aktuelle Datum und die aktuelle Uhrzeit durch LocalDate, LocalDatetime und Local Time; 3. Erstellen Sie ein bestimmtes Datum und eine bestimmte Uhrzeit mit der von () Methode; 4.. Verwenden Sie die Plus/Minus -Methode, um die Zeit nicht zu erh?hen und zu verkürzen. 5. Verwenden Sie ZonedDatetime und zoneId, um die Zeitzone zu verarbeiten. 6. Format und analysieren Sie Datumszeichenfolgen über DateTimeFormatter; 7. Verwenden Sie sofortige, um bei Bedarf mit den alten Datumstypen kompatibel zu sein. Die Verarbeitung der Datum in der modernen Java sollte der Verwendung von Java.Timeapi vorrangig machen, was klare, unver?nderliche und linear ist

Pre-Formancetartuptimemoryusage, QuarkusandmicronautleadduToCompile-Time-foringandgraalvSupport, WithQuarkusofttenperformLightBetterin serverloser Szenarien.2. Thyvelopecosystem,

Die Müllsammlung von Java (GC) ist ein Mechanismus, der automatisch den Speicher verwaltet, der das Risiko eines Speicherlecks verringert, indem unerreichbare Objekte zurückgeführt werden. 1.GC beurteilt die Zug?nglichkeit des Objekts aus dem Stammobjekt (z. B. Stapelvariablen, aktive Threads, statische Felder usw.) und nicht erreichbare Objekte als Müll markiert. 2. Basierend auf dem markierten Algorithmus markieren Sie alle erreichbaren Objekte und l?schen Sie nicht markierte Objekte. 3.. Verfolgen Sie eine Generationskollektionsstrategie: Die neue Generation (Eden, S0, S1) führt h?ufig MollGC aus; Die ?lteren Menschen erzielen weniger, dauert jedoch l?nger, um MajorGC durchzuführen. MetaPace speichert Klassenmetadaten. 4. JVM bietet eine Vielzahl von GC -Ger?ten: SerialGC ist für kleine Anwendungen geeignet; ParallelgC verbessert den Durchsatz; CMS reduziert sich

Durch die Auswahl des richtigen HTMlinput -Typs kann die Datengenauigkeit verbessert, die Benutzererfahrung verbessert und die Benutzerfreundlichkeit verbessert werden. 1. W?hlen Sie die entsprechenden Eingabetypen gem?? dem Datentyp aus, z. B. Text, E -Mail, Tel, Nummer und Datum, die automatisch überprüft und an die Tastatur anpassen k?nnen. 2. Verwenden Sie HTML5, um neue Typen wie URL, Farbe, Reichweite und Suche hinzuzufügen, die eine intuitivere Interaktionsmethode bieten k?nnen. 3.. Verwenden Sie Platzhalter und erforderliche Attribute, um die Effizienz und Genauigkeit der Formulierung zu verbessern. Es sollte jedoch beachtet werden, dass der Platzhalter das Etikett nicht ersetzen kann.

GradleStheBetterChoiceFormostnewProjectsDuetoitSuperiorFlexibilit?t, Leistung und ModerntoolingSupport.1.GRADLE'SGROOVY/KOTLINDSLISMORECONCISEANDEIPRESSIVETHANMANMANBOSEXML.2.GRAGRECONCISEANDEPRPRESSIVETHANMAVENSVOSEXML.2.

Auf Defer wird verwendet, um bestimmte Vorg?nge auszuführen, bevor die Funktion zurückgibt, z. B. die Reinigungsressourcen. Die Parameter werden sofort bewertet, wenn sie aufgeschoben werden, und die Funktionen werden in der Reihenfolge von Last-In-First-Out (LIFO) ausgeführt. 1. Mehrere Defers werden in umgekehrter Reihenfolge der Erkl?rungen ausgeführt. 2. h?ufig für die sichere Reinigung wie das Schlie?en von Dateien verwendet; 3. Der benannte Rückgabewert kann ge?ndert werden; V. 5. Vermeiden Sie den Missbrauch von Verschiebungen in Schleifen, um Ressourcenleckage zu verhindern. Die korrekte Verwendung kann die Sicherheit und die Lesbarkeit der Code verbessern.

HTTP-Protokoll Middleware in Go kann Anforderungsmethoden, Pfade, Client-IP und zeitaufw?ndiges Aufzeichnen aufzeichnen. 1. Verwenden Sie http.Handlerfunc, um den Prozessor zu wickeln, 2. Nehmen Sie die Startzeit und die Endzeit vor und nach dem Aufrufen als n?chstes auf. Der vollst?ndige Beispielcode wurde überprüft, um auszuführen und eignet sich zum Starten eines kleinen und mittelgro?en Projekts. Zu den Erweiterungsvorschl?gen geh?ren das Erfassen von Statuscodes, die Unterstützung von JSON -Protokollen und die Nachverfolgung von ID -IDs.
