¡Hola!
Acabo de publicar una nueva entrada en el blog en Español: Cómo crear una clase Number que ofrezca más posibilidades de las que encontramos a la hora de utilizar tipos de datos primitivos como Integer o Double.
En esta clase vemos cómo utilizar y sobrecargar el método Constructor así como sobrecargar los operadores de asignación (conversión de tipos de datos) y también de Suma.
Con lo visto en el ejemplo no te resultará difícil completarla y adecuarla a tus propias necesidades.
Como de costumbre, ¡espero que encuentres el artículo interesante!