public class Complex { Complex () { a = b = 0.0F; } Complex (float c, float d) { a = c; b = d; } Complex negate() { return new Complex(-a, -b); } // or void negate() { a = -a; b = -b; } static Complex add(Complex x, Complex y) { return new Complex(x.a + y.a, x.b + y.b); } static Complex subtract(Complex x, Complex y) { return add(x, y.negate()); } static Complex multiply(Complex x, Complex y) { return new Complex(x.a * y.a - x.b * y.b, x.a * y.b - x.b * y.a); } public String toString() { return "(" + a + ", " + b + ")"; } private float a, b; }