class Creator { static Benutzer factoryBenutzer(String name, String nachname, int kundennummer, String art) { if (art.equals("e")) { return new Benutzer.Erwachsener(name, nachname, kundennummer); } else if (art.equals("s")) { return new Benutzer.SchuelerStudent(name, nachname, kundennummer, art); } else { return null; } } public static Medien factoryMedien(String name, String regisseur, int id, String art, int erscheinungsjahr) { switch (art.toLowerCase()) { case "buch": return new Medien.Book(name, regisseur, id, erscheinungsjahr); case "dvd": return new Medien.Dvds(name, regisseur, id); case "cd": return new Medien.Cds(name, id); case "sb": return new Medien.Brettspiel(name, id); case "videospiel": return new Medien.Videospiel(name, regisseur, id); default: throw new IllegalArgumentException("Unbekannter Medientyp: " + art); } } }