title image


Smiley Re: Was ist der richtige Weg? Instanzierung einer Klasse oder nicht?


"[...] und in Java ist der Destruktor ja kein explizit selbst zu schreibendes Konstrukt, Garbage Collector sei Dank."

 

Das eine hat ja mit dem anderen nichts zu tun. Der Garbage Collector gibt die System Resourcen einfach wieder frei, wenn sie nicht mehr benötigt werden. Der Destruktorcode kann dann ja immernoch aufgerufen werden (quasi unmittelbar vor der Speicherfreigabe), um letzte Aufräumarbeiten zu erledigen, die der Garbage Collector nicht verstehen kann. Das wird übrigens auch in Java Projekten so gemacht (dafür gibt es finalize). Der Unterschied zwischen Sprachen mit und ohne Garbage Collector besteht nur darin, dass man sich bei Sprachen ohne GC komplett selber um die Speicherfreigabe kümmern muss.

 

"[...] Und static classes ... naja, nach meiner Erfahrung werden die so gut wie nie genutzt [...]"

 

Da habe ich allerdings andere Erfahrungen ;-).

 

"Und die Frage ist ja dabei auch, wieso ich extra ne Klasse schreiben sollte wenn die nur auf sich selbst arbeitet, also ohne Instanz. Dann kann ich auch ein prozedurales Programm schreiben."

 

Zum einen kann man JEDES Programm auch prozedural schreiben, d.h. deiner Argumentation folgend wäre OO überflüssig. Zum anderen ist für einen weiteren Entwickler das Schlüsselwort static eine sehr wichtige Information. Eine Klasse, die man im Grunde static deklarieren könnte, nicht static zu deklarieren halte ich für ungeschickt.

 

In einem Projekt, an dem ich zur Zeit Arbeite, findet sich z.B. ein Stochastikprojekt und in diesem gibt es z.B. eine static class für die Approximation von Standardnormalverteilungen. Die Klasse Normalverteilung wiederrum verwendet Methoden aus der Klasse der Standardnormalverteilungen ohne von dieser dafür eine Instanz anzulegen ... wozu auch.

 


Gruß Chris
This is the course in advanced physics. That means the instructor finds the subject confusing. If he didn't, the course would be called elementary physics. -- Louis Alvarez --
 


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: