Es gibt dazu Implementationen von sogenannten Big Integer, gibt es glaube ich in Java nativ. Sonst kann man auch Float/double nehmen, wenn man mit der Ungenauigkeit leben kann.
Big Integer funktionieren in etwa so, dass du z.B. für jede Ziffer ein char nimmst und dann dich zurück in die Primarschule besinnst und dann alle Operationen selber implementierst. "Schriftlich" Addieren etc.