Die Klasse Car abstrakt machen

Einführung in die Objektorientierte Programmierung in Java

Sani Yusuf

Lead Software Engineering Content Developer

Abstrakte Klasse erklären

  • Der Begriff Car dient nur als Platzhalter
  • Wir müssen noch wissen, um welchen Autotyp es geht

Toyota

Mercedes

Einführung in die Objektorientierte Programmierung in Java

Essens-Analogie für abstrakte Klassen

  • Du bestellst im Restaurant nie einfach nur Essen
  • Du gibst immer an, was du essen willst
    • Brot
    • Pasta
    • Reis

Brot

Pasta

Reis

Einführung in die Objektorientierte Programmierung in Java

Abstrakte Klassen verstehen

  • Abstrakte Klassen halten Features für erbende Klassen
  • Von abstrakten Klassen können keine Objekte erzeugt werden
  • Abstrakte Klassen haben meist keine Code-Implementierung
Einführung in die Objektorientierte Programmierung in Java

Abstrakte Klasse Car


  // Car abstract class
  abstract class Car {    
    // abstract drive method
     abstract void drive(); // No Code Implementation 

  }








Einführung in die Objektorientierte Programmierung in Java

Abstrakte Methoden

  • Abstrakte Methoden haben keine Implementierung
  • Die erbende Klasse muss abstrakte Methoden implementieren

   // Car abstract class
  abstract class Car {    
    // abstract drive method
     abstract void drive(); // No Code  
                            // implementation
  }





  // Toyota class 
  class Toyota extends Car {  
     void drive(){
      // Toyota drive() implementation
    }           
  }
  // Porsche class
  class Porsche extends Car {  
     void drive(){
      // Porsche drive() implementation
    }           
  }
Einführung in die Objektorientierte Programmierung in Java

Konkrete Methoden erstellen

  • Konkrete Methoden haben eine Code-Implementierung
  • Unterklassen müssen konkrete Methoden nicht implementieren

  // abstract Car class
  abstract class Car {
    private int topSpeed;

    // Concrete method with implementation
    public getTopSpeed(){
         return this.topSpeed;
    }

    abstract void drive(); 
    // No Code Implementation        
  }

Einführung in die Objektorientierte Programmierung in Java

Lass uns üben!

Einführung in die Objektorientierte Programmierung in Java

Preparing Video For Download...