1.2.5 | Robust |
Der Verzicht auf Pointer leistet eigentlich den größten Beitrag zur Robustheit von Java. Statistiken haben gezeigt, dass ein sehr großer Teil von Fehlern in C/C++-Programmen auf Fehler bei der Pointer-Verarbeitung zurückzuführen ist. Da Pointer in Java nicht vorgesehen sind, können diese Fehler hier gar nicht erst entstehen.
Anstelle von direkter Speicherfreigabe mit free bietet Java einen eingebauten Garbage Collector, wie man ihn von Sprachen wie Lisp oder Smalltalk kennt. Der Programmierer braucht sich damit nicht um die Speicherverwaltung zu kümmern und hat auch gar keine Möglichkeit, es zu tun. Statt dessen kümmert sich das System automatisch um die Freigabe von Speicherplatz.
Auch die konsequente Objektorientierung mit gleichzeitiger strenger Typenprüfung leistet hier ihren Beitrag. Der Verzicht der Java-Entwickler auf Operator-Overloading, multiple Vererbung und die Einschränkung der automatischen Typenumwandlung tragen ebenfalls zu einer höheren Verlässlichkeit der Java-Programme bei.