Vergleich von Java Override und Overload

Override und Overload in Java sind zwei verschiedene Konzepte zum Umschreiben/Überladen von Methoden. Das Folgende ist ein Vergleichs- und Beispielcode zum Umschreiben und Überladen:

  1. Überschreiben
    Überschreiben bezieht sich auf die Neudefinition vorhandener Methoden in der übergeordneten Klasse in der Unterklasse, um unterschiedliche Verhaltensweisen in der Unterklasse zu erreichen. Überschriebene Methoden in Unterklassen müssen denselben Methodennamen, dieselbe Parameterliste und denselben Rückgabetyp haben.

Beispielcode:

class Animal {
    
    
    public void makeSound() {
    
    
        System.out.println("Animal makes a sound.");
    }
}

class Cat extends Animal {
    
    
    @Override
    public void makeSound() {
    
    
        System.out.println("Cat meows.");
    }
}

public class Main {
    
    
    public static void main(String[] args) {
    
    
        Animal animal = new Cat();
        animal.makeSound(); // Output: Cat meows.
    }
}

Im obigen Beispiel gibt es eine makeSound()-Methode in der Animal-Klasse, und die Cat-Klasse überschreibt diese Methode und implementiert unterschiedliche Verhaltensweisen.

  1. Überladung
    Überladung bezieht sich auf die Definition mehrerer Methoden in einer Klasse, die denselben Namen, aber unterschiedliche Parameterlisten haben. Überladene Methoden rufen basierend auf den übergebenen Parametern unterschiedliche Methoden auf.

Beispielcode:

class Calculator {
    
    
    public int add(int num1, int num2) {
    
    
        return num1 + num2;
    }
    
    public double add(double num1, double num2) {
    
    
        return num1 + num2;
    }
}

public class Main {
    
    
    public static void main(String[] args) {
    
    
        Calculator calculator = new Calculator();
        System.out.println(calculator.add(5, 10)); // Output: 15
        System.out.println(calculator.add(3.5, 2.5)); // Output: 6.0
    }
}

Im obigen Beispiel gibt es zwei add()-Methoden in der Calculator-Klasse, eine akzeptiert zwei ganzzahlige Parameter und die andere akzeptiert zwei Gleitkommaparameter. Abhängig von den übergebenen Parametern wird die entsprechende add()-Methode automatisch zum Aufruf ausgewählt.

Zusammenfassen:

  • Beim Überschreiben werden vorhandene Methoden in der übergeordneten Klasse in der Unterklasse neu definiert. Für denselben Methodennamen und dieselbe Parameterliste wird zur Laufzeit entsprechend dem Objekttyp ausgewählt, welche Methode aufgerufen werden soll.
  • Beim Überladen werden mehrere Methoden in einer Klasse definiert. Diese Methoden haben denselben Namen, aber unterschiedliche Parameterlisten, und unterschiedliche Methoden werden entsprechend den unterschiedlichen übergebenen Parametern aufgerufen.

Durch Überschreiben und Überladen können wir mit Java Polymorphismus im Code erreichen und flexible Methodenaufrufe und Wiederverwendungen entsprechend unterschiedlichen Anforderungen durchführen.

Guess you like

Origin blog.csdn.net/wsrzsfgst/article/details/134976884