Clase ComplexNumber mejorada Aprende programación con ejercicios Java

Lección:

POO Más sobre Clases


Ejercicio:

Clase ComplexNumber mejorada 54


Objetivo:

Mejore la clase "ComplexNumber", para que sobrecargue los operadores + y - para sumar y restar números.


Código:

public class ComplexNumber
{
	protected double a, b;

	public ComplexNumber(double realPart, double imaginaryPart)
	{
		a = realPart;
		b = imaginaryPart;
	}


	public final double GetReal()
	{
		return a;
	}


	public final void SetReal(double a)
	{
		this.a = a;
	}


	public final double GetImaginary()
	{
		return b;
	}


	public final void SetImaginary(double b)
	{
		this.b = b;
	}

	public final String toString()
	{
		return "(" + a + "," + b + ")";
	}


	public final double GetMagnitude()
	{
		return Math.sqrt((a * a) + (b * b));
	}


	public final void Add(ComplexNumber c2)
	{
		a += c2.GetReal();
		b += c2.GetImaginary();
	}

}

public class Main
{
	public static void main(String[] args)
	{
		ComplexNumber number = new ComplexNumber(5, 2);
		System.out.println("Number is: " + number.toString());

		number.SetImaginary(-3);
		System.out.println("Number is: " + number.toString());

		System.out.print("Magnitude is: ");
		System.out.println(number.GetMagnitude());

		ComplexNumber number2 = new ComplexNumber(-1, 1);
		number.Add(number2);
		System.out.print("After adding: ");
		System.out.println(number.toString());
	}
}