2017-06-01 2 views
-2

Ich versuche, eine Java-Bibliothek mit einer Reihe zusätzlicher Klassen zu erstellen, und ich habe eine für Imaginary-Nummern hinzugefügt. Gibt es eine Möglichkeit in Java eine benutzerdefinierte Klasse zu machen, die durch mathematische Operationen beispielsweise betroffen istKlasse mit mathematischen Operationen erstellen

Imaginary (10) * Imaginary (50) = „500i“

+1

Einfache einfache Antwort von Google: Java unterstützt keine Überladung des Operators. – GhostCat

Antwort

0

Sie können keine Operatoren in Java überladen. Siehe diese vorherige Antwort auf eine ähnliche Frage: https://stackoverflow.com/a/5883909/1701316

Ihre Klasse muss ihre Operationen als Methoden implementieren. Wenn Sie möchten, dass ein beliebiges Zeichen in einem Methodennamen erlaubt ist, können Sie sie mit den typischen Operatoren benennen, aber sie müssen immer noch mit Punktnotation aufgerufen werden: Imaginary (10). * (Imaginary (50))

2

Nein, es ist nicht möglich, benutzerdefinierte definieren arithmetische Operatoren, die Standardoperatoren überlasten, aber Sie können Methoden wie Imaginary.mutiply(Imaginary i) erstellen.

Verwandte Themen