echo $begrüßung;
Aber wo ist der Unterschied ob ich ein
throw new Exception("No ale in fridge");
oder ein
throw new noAleInFridgeException();
mache?
Du kannst gezielt auf einen Exception-Typ catchen. Du willst ja irgendwas sinnvolles beim Auftreten der Exception machen, und dafür brauchst du Unterscheidungsmerkmale. Wenn du einfach nur ein "Fehler aufgetreten" ausgeben willst, kannst du dir das Exceptions-Verwenden im Prinzip auch sparen.
Und was ist wenn ich mehrere Klassen habe, in der aber zwei zufällig eine outOfRangeException definieren?
Meinst du werfen statt definieren? Wenn du nicht mehr weißt, wer die Exception geworfen hat, dann hast du zu wenige Fangstellen eingebaut. Außerdem ist in einer Exception immer ein Backtrace vorhanden.
echo "$verabschiedung $name";