Java kompiliert seiner rohen Quellen -Code in Bytecode , anstatt ausführbaren Code. Bytecode in Maschinencode für einzelne Computer von der virtuellen Java- Maschine, die auf dem jeweiligen Rechner installiert ist übersetzt . Dieses System ermöglicht es Java-Programmierer , um Multi-Plattform- Programme, die Webseiten genannt weglaufen Applets erstellen. Diese Programme können für eine Reihe von Gründen , angefangen von JVM Inkompatibilität , um Fehler im Quellcode abstürzen. Lädt Fragen
Ein Java-Applet kann abstürzen , bevor es beginnt je. Entwickler laden Applets als Selbstversorger " . Jar" Dateien, die alles, was das Ende des Benutzers JVM braucht um das Programm auszuführen enthalten . Wenn der Entwickler nicht auf etwas in der . Jar-Datei gehören , dann ist die JVM nicht in der Lage , um das Applet zu starten. Ein weiteres Problem, das Applet erfolgreichen Start konnte verhindern Beschädigung von Daten in der . Jar-Datei selber. Dies könnte passieren, wenn die Entwickler lädt die Datei von seinem Computer auf den Server.
Malicious Applet -Code
Java-Applets auch abstürzen können , weil ihre Entwickler konzipiert sie zum Absturz zu bringen . Wenn Applets Crash , können sie auslösen Verhaltensweisen seitens der Browser , dass normale Computer-Sicherheit funktioniert nicht immer rechnen . Malware-Autoren zu entdecken Möglichkeiten, um diese Abstürze zu nutzen, um ein Computer- Sicherheit gefährden , die Installation von Software mit erhöhten administrativen Berechtigungen oder den Zugriff auf Systemkomponenten , die normalerweise beschränkt sind . Keeping Web-Browser und System Sicherheitspatches up-to -date kann gegen diese Art der Ausbeutung zu schützen.
JVM Incompatility
Mehrere Versionen der Java-Sprache und JVM existieren. Die neueste JVM ist so konzipiert, rückwärts kompatibel mit Java-Programmen , die Entwickler für frühere Versionen JVM zusammengestellt. Wenn ein Benutzer eine ältere Version der JVM und versucht, ein Applet , dessen Entwickler kompiliert es für die neueste Version der JVM ausgeführt werden , dann kann es nicht auf neuere Bytecode und Crash zu lesen.
schlechte Programmierung
Java-Entwickler sollen gründlich testen ihre Programme , bevor sie sie an die Öffentlichkeit freizugeben. Dies ermöglicht es ihnen , um Fehler in den Quellcode , der einen Absturz konnte das Programm zu entdecken. Wenn ein Programmierer Fehler gemacht in seinem Quellcode dazu führen, dass die JVM zum Absturz zu bringen und testet nicht seine Arbeit , um den Fehler zu entdecken könnte , dann könnte er ein Applet mit schlecht geschriebenen Quellcode, abstürzen, wenn Nutzer sie ausgeführt werden soll hochzuladen.