Okjektorientiert programmieren

Feras

Aktives Mitglied
Hi, ich soll die Klassen Human und Taxi programmieren.

Leider erhalte ich beim Code die Fehlermeldung: "contains obsolote methods" in der Klasse Taxi...

Java:
public class Taxi {
  
   private static Human driver;
   private Human passengers;
  
   public Taxi(Human driver)   {
      
       this.driver = driver;
   }
  
   public static String getDriverName()   {
      
       return driver.getForename() + " " + driver.getName();
   }
  
   public static String add(Human x)   {
      
       for(int i = 0; i<=4; i++)   {  
          
           Taxi.add(x);
          
       }
      
       return  x + " gets in.";
   }
  
  
  
   public static void main(String[] args)   {
      
       Human driver = new Human("Henry", "Goil");
      
       System.out.println(getDriverName());
      
       Human m1 = new Human("John", "Smith");
       Human m2 = new Human("Will", "Harper");
      
       Taxi taxi1 = new Taxi(m1);
      
       taxi1.add(m2);
      
       System.out.println(taxi1);
   }

}

Java:
public class Human {
  
   private String forename;
   private String name;
  
   public Human(String forename, String name)   {
      
       this.forename = forename;
       this.name = name;
   }
  
   public String getName()   {
       return name;
   }
  
   public String getForename()   {
       return forename;
   }
  
   public String toString()   {
      
       return "This is " + getForename() + " " +
                                   getName() + ".";
              
   }
  
   public static void main(String[] args)   {
      
       Human guy = new Human("Marcus", "Miller");
      
       System.out.println(guy);
              
   }

}


Leider weiß ich nicht, was der Fehler ist... Seht ihr es?
 
Zuletzt bearbeitet von einem Moderator:
Ich sehe Fehler, allerdings nicht den von dir genannten.

Du solltest als erstes mal alle "static" entfernen (bis auf das an den main() natürlich), Static ist das Gegenteil von Objektorientiert 😉
Die restlichen Fehler siehst du, wenn du es startest
 
Und als anmerkung Variablennamen sind möglichst immer aussagekräftig zu wählen. Also sowas wie m1 m2 oder x ist ungeeignet. Hier jetzt nicht so schlimm aber sobald das Programm größer wird und jemand anders sich einlesen muss ist das grande katastrophe.
 

Zurück
Oben