私は次の問題を抱えています:
次のクラスComplex(複素数を表す)を拡張し、指数形式のフィールドを追加する必要があります。さらに、Complexのメソッドをオーバーロードします。
class Complex{
public double re;
public double im;
public Complex(double r, double i){
    re =r;
    im = i;
}
public Complex add(Complex a,Complex b){
    return new Complex(a.re + b.re,a.im + b.im );
}
public Complex sub(Complex a,Complex b){
    return new Complex(a.re - b.re,a.im - b.im);
}
//more code
}
私のクラスは次のようなものです
class ComplexE extends Complex{
   public double exponential;
    public ComplexE(double a, double b){
        re=a;
        im = b;
    }
    public ComplexE(double _exp){
        super(0,0);
        this.exponential = _exp;
    }
   public void setExpFromComplex(Complex comp){
    double module = Math.sqrt(Math.pow(comp.re,2) + Math.pow(comp.im,2));
    double fi = Math.atan2(comp.re,comp.im);
    this.exponential = module * Math.pow(Math.E, fi);
   } 
   public ComplexE add(ComplexE a,ComplexE b){
        return new ComplexE(a.exponential + b.exponential );
    }
}
私の質問は次のとおりです:私はそれを正しくやっていますか?指数形式を見つける私の方法は正しいですか?
編集:私が使おうとした数学的な方法は次のとおりです。
z = |z|*(cos(phi) + i*sin(phi)) = |z|*e^(i*phi).