Heim Java javaLernprogramm Was sind Methodenumschreiben und Methodenüberladung in Java? Was ist der Unterschied

Was sind Methodenumschreiben und Methodenüberladung in Java? Was ist der Unterschied

Nov 23, 2018 am 11:03 AM
java Methode überschreiben Methodenüberlastung

Was sind Methodenumschreiben und Überladen in Java? In diesem Artikel erfahren Sie, was das Umschreiben (Überschreiben) und Überladen von Methoden in Java ist, damit Sie den Unterschied zwischen Umschreiben und Überladen von Methoden verstehen können. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird Ihnen hilfreich sein.

Methodenüberladung und Methodenumschreibung sind Konzepte der objektorientierten Programmierung (OOP), die in verschiedenen Java-Implementierungen häufig verwendet werden und zwei sehr wichtige Konzepte in Java sind. Schauen wir uns das Überladen von Methoden und das Umschreiben von Methoden genauer an.

Was ist Methodenüberladung in Java?

Methodenüberladung ermöglicht es uns, mehrere Methoden mit demselben Namen und denselben oder unterschiedlichen Rückgabetypen zu haben. Das Wichtige an der Methodenüberladung ist, dass alle diese Methoden unterschiedliche Parameter mit demselben Rückgabetyp haben müssen. Es ist üblich, eine Methode mit den meisten Parametern zu implementieren, während die anderen Methoden (mit weniger Parametern) einfach auf die „große“ Methode umleiten und Standardwerte für die fehlenden Parameter bereitstellen, etwa so:

class  OverloadingExample {  
     static int  add(int  a,int  b){ return  a + b;}   
     static int  add(int  a,int  b,int  c){ return  a + b + c;}   
}

Was ist das Überschreiben (Überschreiben) von Methoden in Java?

Das Überschreiben (Überschreiben) von Methoden ist Teil der Vererbung der OOP-Prinzipien durch Java. Die Idee hinter dem Methodenüberschreiben (Overriding) besteht darin, die Implementierung einer bestimmten Methode in einer Unterklasse zu ändern. Mit anderen Worten: Wir verwenden die Methode (Name, Rückgabetypen, Parameter), um die Implementierung der Methode der übergeordneten Klasse zu „überschreiben“ und implementieren dann verschiedene Funktionen innerhalb der überschriebenen Methode.

Hinweis: Private, statische und finale Methoden können in Java nicht überschrieben werden.

Beispiel:

class  Animal {  
   void  eat(){
     System.out.println(“吃 ......” );
   }  
}  
class  Dog  extends  Animal {  
   void  eat(){
      System.out.println(“吃面包......” );
   }  
}

Regeln zum Umschreiben (Überschreiben) von Methoden in Java

Im Folgenden sind die Regeln für das Umschreiben von Methoden in Java aufgeführt, beim Umschreiben ( Diese Beim Überschreiben einer Methode müssen Regeln befolgt werden.

1. Die Methodensignatur muss identisch sein, einschließlich des Rückgabetyps, der Anzahl der Methodenparameter, der Art der Parameter und der Reihenfolge der Parameter.

2 Die überschriebene Methode kann nicht mehr auslösen als die ursprüngliche oder überschriebene Methode Hohe Abnormalität. Das heißt, wenn die ursprüngliche Methode eine IOException auslöst, kann die überschriebene Methode keine Oberklasse von IOException auslösen, beispielsweise eine Ausnahme, aber sie kann eine beliebige Unterklasse von IOException oder überhaupt keine Ausnahme auslösen. Diese Regel gilt nur für geprüfte Ausnahmen in Java. Überschreibende Methoden können jede ungeprüfte Ausnahme auslösen.

3. Überschreibende Methoden können die Zugänglichkeit der überschriebenen Methode nicht beeinträchtigen. Das heißt, wenn die ursprüngliche Methode oder die überschriebene Methode öffentlich ist, kann die überschreibende Methode sie nicht schützen.

Werfen wir einen Blick auf konkrete Beispiele für Methodenüberladung und Methodenumschreibung in Java.

Im Folgenden finden Sie Beispiele für das Überladen von Methoden und das Umschreiben von Methoden in Java. Um dieses Konzept zu erklären, haben wir zwei Klassen Loan und PersonalLoan erstellt. Die Methode createLoan() ist aufgrund der unterschiedlichen Versionen mit unterschiedlichen Signaturen überlastet, während die ursprüngliche in der Object-Klasse deklarierte toString()-Methode sowohl in der Loan- als auch in der PersonalLoan-Klasse überschrieben wird.

Unterschied zwischen Methodenüberschreibung und Methodenüberladung in Java

Es gibt viele Unterschiede zwischen Methodenüberschreibung und Methodenüberladung in Java, den Unterschied zwischen Überladung und das Umschreiben ist in vielen Unternehmen auch eine der häufigsten Java-Interviewfragen. Werfen wir einen Blick auf die Unterschiede zwischen ihnen:

Methodenüberladung

1 Bei der Methodenüberladung hat die Klasse den gleichen Namen und zwei oder mehr Methoden mit unterschiedlichen Parametern .

2. Beim Überladen ist der Rückgabetyp bei beiden Methoden unterschiedlich.

3. Wenn eine Methode aufgerufen wird, ruft die JVM die entsprechende Methode entsprechend den ihr übergebenen Parametern auf.

4. Methodenüberladung ist ein Beispiel für Polymorphismus zur Kompilierungszeit .

5. Methodenüberladung wird verwendet, um die Lesbarkeit des Programms zu erhöhen.

Methodenumschreibung

1 Beim Methodenumschreiben müssen Methoden mit demselben Namen in Klassen und Unterklassen auch gleich sein, einschließlich der Parameter.

2. Es sollte auch beim überschriebenen Rückgabetyp dasselbe sein.

3. Die JVM ruft die entsprechende Methode entsprechend dem Objekt auf, das zum Aufrufen der Methode verwendet wird.

4. Das Überschreiben von Methoden ist ein Beispiel für eine polymorphe Laufzeit .

5. Das Überschreiben von Methoden wird verwendet, um spezifische Implementierungen von Methoden bereitzustellen, die bereits von der Oberklasse bereitgestellt werden.

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Das obige ist der detaillierte Inhalt vonWas sind Methodenumschreiben und Methodenüberladung in Java? Was ist der Unterschied. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Stock Market GPT

Stock Market GPT

KI-gestützte Anlageforschung für intelligentere Entscheidungen

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So erstellen Sie eine Datei in Java So erstellen Sie eine Datei in Java Sep 21, 2025 am 03:54 AM

Usefile

Wo finden Sie Ordner Wo finden Sie Ordner Sep 20, 2025 am 07:57 AM

Der direkteste Weg ist, den Speicherort zu erinnern, normalerweise in Ordnern wie Desktop, Dokumente, Downloads usw.; Wenn es nicht gefunden werden kann, können Sie die Systemsuchfunktion verwenden. Die Datei "fehlenden" ist hauptsächlich auf Probleme wie die Unaufmerksamkeit des Speicherpfads, die Namensspeicherabweichung, das Versteck oder die Cloud -Synchronisation zurückzuführen. Effiziente Verwaltungsvorschläge: Klassifizieren Sie nach Projekt, Zeit und Typ, nutzen Sie den schnellen Zugang, regelmäßig und archivieren Sie sie und standardisieren Sie die Benennung. Windows -Suche und Suche über den Datei -Explorer und die Taskleiste, während MacOS auf Finder und Spotlight angewiesen ist, was schlauer und effizienter ist. Mastering -Tools und die Entwicklung guter Gewohnheiten ist der Schlüssel.

Wie füge ich dem Klassenpfad eine JAR -Datei in Java hinzu? Wie füge ich dem Klassenpfad eine JAR -Datei in Java hinzu? Sep 21, 2025 am 05:09 AM

Verwenden Sie den Parameter -cp, um das JAR zum Klassenpfad hinzuzufügen, damit das JVM seine internen Klassen und Ressourcen laden kann, wie z.

Wie implementiere ich eine Schnittstelle in Java? Wie implementiere ich eine Schnittstelle in Java? Sep 18, 2025 am 05:31 AM

Verwenden Sie das Keyword implementiert die Benutzeroberfläche. Die Klasse muss spezifische Implementierungen aller Methoden in der Schnittstelle bereitstellen. Es unterstützt mehrere Schnittstellen und wird von Commas getrennt, um sicherzustellen, dass die Methoden öffentlich sind. Die Standard- und statischen Methoden nach Java 8 müssen nicht umschreiben.

Google Chrome kann diese Seite nicht laden Google Chrome kann diese Seite nicht laden Sep 20, 2025 am 03:51 AM

Überprüfen Sie zunächst, ob die Netzwerkverbindung normal ist. Wenn andere Websites nicht geöffnet werden können, liegt das Problem im Netzwerk. 1. Löschen Sie den Browser -Cache und die Cookies, geben Sie Chrome -Einstellungen ein und wählen Sie durch das Durchsuchen der Browserdaten. 2. Schließen Sie die Erweiterung, und Sie können den narbenlosen Modus verwenden, um zu testen, ob er durch Plug-in-Konflikte verursacht wird. 3. Überprüfen und schließen Sie die Proxy- oder VPN -Einstellungen, um zu vermeiden, dass die Netzwerkverbindung abgefangen wird. V. 5. Chrom aktualisieren oder neu auf die neueste Version installieren, um Kompatibilitätsprobleme zu lösen; 6. Verwenden Sie andere Browser, um zu vergleichen und zu testen, um zu bestätigen, ob das Problem nur Chrom ist. Entsprechend Fehlereingaben wie Err_Connection_Timed_out oder Err_SSL_Protocol_er

Java Generics und Wildcards verstehen Java Generics und Wildcards verstehen Sep 20, 2025 am 01:58 AM

Javagenericsprovidecompile-timetypesafetyandeliminatecastingbyallowingtypeparametersonclasses,interfaces,andmethods;wildcards(?,?extendsType,?superType)handleunknowntypeswithflexibility.1.UseunboundedwildcardwhentypeisirrelevantandonlyreadingasObject

Python konvertieren String in DateTime -Beispiel Python konvertieren String in DateTime -Beispiel Sep 18, 2025 am 02:34 AM

Verwenden Sie die Methode datetime.strptime (), um eine Zeichenfolge in ein DateTime -Objekt umzuwandeln, und es ist erforderlich, um sicherzustellen, dass die Formatter und die Zeichenfolge genau übereinstimmen. 2. Zu den gemeinsamen Formatierern zählen %y (Vier-Bit-Jahr), %M (Monat), %D (Tag), %H (Stunde), %m (Minute), %s (Sekunden) usw.; 3. Verwenden Sie %i und %p für die Zeit mit AM/PM und verwenden Sie DateTime.FromisoFormat () direkt für ISO -Formate; 4. Wenn das Format nicht übereinstimmt, wird ein ValueError angehoben. Es wird empfohlen, DateUtil.Parser.Parse () zu verwenden, um es beim Umgang mit mehreren Formaten automatisch zu identifizieren. Die korrekte Verwendung dieser Methoden kann die Zeichenfolgen für DateTime -Objekte effizient vervollständigen

Wie schreibe ich einen einfachen Lambda -Ausdruck in Java? Wie schreibe ich einen einfachen Lambda -Ausdruck in Java? Sep 17, 2025 am 01:46 AM

Lambda -Ausdrücke werden verwendet, um den Code der funktionalen Schnittstellen zu vereinfachen. Zum Beispiel bedeutet ()-> System.out.println ("Hallo") keinen Parameterdruck; Runnabletask = ()-> System.out.println ("Running ...") ersetzt anonyme Klassen; (a, b)-> a b implementiert die Binaryoperator-Grenzfläche; Es wird häufig für Vergleiche, Verbraucher und andere Schnittstellen wie Sammlungen verwendet.

See all articles