Hallihallo!
Der Speicher der Instanzvariavblen muss nicht freigegeben werden, das passiert automatisch *nachdem* der Dekonstruktor ausgeführt wurde. ("Nachdem" nur im Sinne dessen, dass es hinterher passiert, der Vorgang wird direkt auf den Dekonstruktor folgen.) Alles andere wäre auch sinnfrei, da du im Dekonstruktor noch auf die Instanzvariavblen zugreifen wollen könntest...
AFAIK müssen jedoch Instanzvariablen, die selber vom Heap alloziert wurden (bsp. Arrays, oder weitere Objekte innerhalb des Objekts) explizit von Hand vernichtet werden, um Speicherlöcher zu vermeiden. Soweit ich weiß, geschieht das nämlich nicht bei der "automatischen Destruktion".
Viele liebe Grüße,
Der Dicki