ferdi09 hat geschrieben:@EyDu
Das ist natürlich elegant. Nur was mir daran nicht gefällt, das ein aufrufen von z.B. fraction + 3 nicht funktioniert, da die 3 als int initialisiert wird und nicht als Typ deiner Klasse Integer. Oder habe ich wieder was übersehen?
Das siehst du so schon richtig, aber es kommt halt immer darauf an, was man machen möchte. Wenn du vor hast eine riesige Mathebibliothek zu schreiben würde ich meine Lösung vorziehen und Aufrufe der Form "Integer(42)" vorziehen, da ich so auf der sicheren Seite bin. Wenn du aber nur ab und zu mal Brüche benötigst, die mit Integern addiert werden sollen wird deine Lösung sicherlich ausreichen.
Probleme hast du nur, wenn du dein System irgendwann mal erweitern möchtest (und das soll öfter vorkommen als man glaubt) und du dann an allen Ecken Inkonsistenzen bekommst um die du IRGENDWIE herumarbeiten mußt.
Außerdem finde ich es schöner Probleme mit Design zu erschlagen, als mit irgend welchen wirren Methoden. Vielleicht liegt es aber auch daran, dass die Projekte an denen ich arbeite so einen Umfang haben, dass es anders kaum noch geht.