Das ist eigentlich nur ein Interface für Klassen.
D.h. alle Klasse, die dieses Interface implementieren, müssen diese Properties zur Verfügung stellen.
Sinn der Klasse ist ganz einfach; als Beispiel nehm ich mal die von dir vorgegebene Gleichung:
6 + 2 - 3 + 4 * 5 / 3 = 15
Diese verlegt man in Teilstücke, d.h.:
ICalculationTerm1(6, 2,+) ICalculationTerm2(ICalculationTerm1.Result, 3,-) ICalculationTerm3(4, 5,*) ICalculationTerm4(ICalculationTerm3.Result, 3,/) ICalculationTerm5(ICalculationTerm2.Result, ICalculationTerm4.Result,+)
Ergo: ICalculationTerm5.Result == 33.333333333