Zuhause Persönliche Finanzen Programmierung von Java: Wenn Fehler auftreten - Dummies

Programmierung von Java: Wenn Fehler auftreten - Dummies

Inhaltsverzeichnis:

Video: Java Crashkurs für Anfänger in 3 Std [20/21] | FEHLERBEHANDLUNG (TRY-CATCH) 2024

Video: Java Crashkurs für Anfänger in 3 Std [20/21] | FEHLERBEHANDLUNG (TRY-CATCH) 2024
Anonim

Fehler in Java-Anwendungen können zu verschiedenen Zeiten auftreten. Sie können jedoch weitgehend klassifizieren, wann ein Fehler in zwei Kategorien zur Kompilierungszeit und zur Laufzeit auftritt, wie in den folgenden Abschnitten beschrieben.

Kompilierzeitfehler

Der Compiler konvertiert Ihren Anwendungscode in Java-Bytecode. Während dieses Vorgangs benötigt es den von Ihnen geschriebenen, von Menschen lesbaren Code und wandelt ihn in etwas um, das die Java Runtime Environment (JRE) versteht.

Um diesen Prozess auszuführen, muss der Compiler den Code analysieren, dh er liest den Code so, dass eindeutig bestimmt wird, was die Anwendung tun soll, wenn Sie wollen Sie es tun, und wie Sie die Aufgabe erfüllt haben wollen. Wenn Sie die Regeln zum Schreiben von eindeutigem Code brechen, zeigt der Compiler eine Fehlermeldung an. Diese Nachricht ist eigentlich eine Art Ausnahme.

Das Parsen bedeutet, die von Ihnen eingegebene Eingabe zu lesen, beispielsweise Code in lesbarer Form, und sie in etwas anderes zu verwandeln, z. B. in Java-Bytecode. Eine Anwendung kann auch Benutzereingaben analysieren. Beispielsweise könnte ein Benutzer eine Zeichenfolge eingeben, die aus dem Anwendungscode in eine Zahl umgewandelt wird.

Beim Parsen wird also eine Art von Eingabe gelesen, diese Eingabe auf eine bestimmte Weise interpretiert und dann eine Ausgabe basierend auf der interpretierten Eingabe erzeugt. Ein Parser erzeugt einen Fehler, wenn die Eingabe nicht das ist, was er erwartet.

Wenn der Benutzer beispielsweise eine Zeichenfolge mit dem Buchstaben C eingibt und Sie eine Zeichenfolge mit einer Zahl wie 123 erwartet haben, generiert der Parser eine Ausnahmebedingung, die besagt, dass die Eingabe falsch ist.

Kompilierzeitfehler sind am einfachsten zu handhaben, weil der Compiler normalerweise genau sagt, was falsch ist und wo der Fehler aufgetreten ist. Selbst wenn die Informationen nicht exakt sind, bringt Sie der Compiler zumindest in den richtigen Bereich des fehlerhaften Codes, so dass Sie nach dem darin enthaltenen Fehler suchen können.

Um sicherzustellen, dass jeder genau versteht, wie die Java-Sprache funktionieren soll, erstellen Entwickler eine Spezifikation dafür. Diese Spezifikation enthält die Sprachelemente in einer speziellen Sprache namens Backus-Naur Form (BNF). Die Verwendung von BNF ist eine äußerst präzise Methode, um eine Sprache so zu beschreiben, dass kein Risiko einer Fehlinterpretation durch irgendjemanden besteht.

Sie können ein Beispiel des BNF für die Java-Sprache am Department of Computer Science - Daimi sehen. Machen Sie sich keine Sorgen, ob Sie diese Spezifikation lesen können. Die meisten Entwickler lernen nie, die BNF für die von ihnen verwendeten Sprachen zu interpretieren - das ist die Domäne von Compiler-Entwicklern.

Laufzeitfehler

Der Java-Compiler kann nicht jeden Fehler in Ihrem Code finden. Wenn die Form des Codes korrekt ist (das heißt, Sie haben keine Fehler beim Eingeben der Elemente gemacht, die die Anwendung erstellen), wird der Compiler den Fehler nicht finden.

Wenn Sie beispielsweise einen numerischen Wert statt 5 auf 5 initialisieren, kann der Compiler den Fehler nicht für Sie finden, weil der Compiler keine Ahnung hat, dass Sie wirklich 4 schreiben wollten. Diese Art von Fehlern erzeugt Laufzeitfehler - die Fehler, die irgendwann während der Ausführung der Anwendung auftreten.

Laufzeitfehler können zu allen Zeiten auftreten. Einige Fehler treten wahrscheinlicher zu bestimmten Zeiten auf. Die folgende Liste gibt Ihnen einige Ideen, wann Laufzeitfehler auftreten können:

  • Initialisierung: Wenn die Anwendung zum ersten Mal gestartet wird - bevor sie dem Benutzer eine beliebige Schnittstelle anbietet oder eine nützliche Arbeit verrichtet - geht sie durch eine Initialisierungsphase. Dies ist der Fall, wenn Sie eine Variable auf den falschen Typ setzen oder versuchen, eine Variable zu verwenden, bevor Sie sie initialisieren. Viele ressourcenbezogene Fehler treten auch während der Initialisierung auf, da die meisten Anwendungen während dieser Zeit die erforderlichen Ressourcen öffnen.

  • Betriebsart: Nachdem eine Applikation initialisiert wurde, befindet sie sich im Betriebsmodus. Wenn es eine Benutzeroberfläche hat, beginnt es mit dem Benutzer zu interagieren. Dies ist die Zeit, in der die Benutzereingabe am wichtigsten ist.

    Zu ​​diesem Zeitpunkt werden Sie auch falsch initialisierte Variablen finden, weil der Benutzer (oder der Empfänger der Anwendungsausgabe, wie z. B. das System) sehen wird, dass die Ausgabe falsch ist. Benutzeranforderungen für Ressourcen, z. B. eine Datendatei, verursachen während dieser Zeit ebenfalls Fehler.

  • Hintergrundverarbeitung: Die meisten Hintergrundverarbeitungsfehler resultieren aus der Umgebung (z. B. dem Verlust einer Netzwerkverbindung), fehlenden Ressourcen (z. B. verloren gegangene Datei), falsch initialisierten Variablen oder Fehler bei der Benachrichtigung eine Aufgabe ausführen. Einige Aufgaben werden häufiger im Hintergrund ausgeführt als andere.

    Zum Beispiel wird das Drucken eines Dokuments oder das Herunterladen von Ressourcen aus dem Internet üblicherweise im Hintergrund ausgeführt, während der Benutzer weiterhin mit der Anwendung im Vordergrund arbeitet.

  • Herunterfahren: Wenn der Benutzer (einschließlich der Systemkonten) der Anwendung mitteilt, dass sie nicht mehr benötigt wird, durchläuft die Anwendung eine Abschaltphase. Während dieser Phase des Herunterfahrens schließt die Anwendung Dateien und führt andere hauswirtschaftliche Aufgaben aus, die sicherstellen, dass die Anwendung keine Unordnung für das Betriebssystem hinterlässt.

    Die häufigsten Fehler, die während dieser Phase auftreten können, geben keine Ressourcen frei, die von Ihrer Anwendung verwendet wurden, und speichern keine Daten auf der Festplatte. Natürlich können Codierungsfehler jederzeit auftreten, und diese Betriebsphase ist keine Ausnahme. Sie könnten der Anwendung mitteilen, fünf Dateien zu schließen, wenn nur vier von ihnen tatsächlich geöffnet sind.

Die JRE zeigt die meisten Laufzeitfehler an, die sie als Ausnahmen erkennt. Die JRE wird jedoch nicht jeden Fehler in Ihrer Anwendung erfassen.Sie müssen sich auch die Ausgabe Ihrer Anwendung ansehen, um festzustellen, ob die Ausgabe den Erwartungen entspricht, die Sie für eine bestimmte Eingabe haben.

Darüber hinaus ist es wichtig, den Status der von Ihnen verwendeten Ressourcen zu überprüfen, um sicherzustellen, dass sie in keiner Weise beschädigt sind. Zum Beispiel müssen Sie sicherstellen, dass alle Daten, die Sie in einer Datei speichern sollten, tatsächlich in der Datei landen, wenn Ihre Anwendung heruntergefahren wird.

In Java 8 liegt der Schwerpunkt auf der Sicherheit. Dies bedeutet, dass Sie bei der Arbeit mit Ihrer Anwendung mehr SecurityException-Instanzen sehen.

Eine Erhöhung der Sicherheitsausnahmen bedeutet nicht, dass Ihr Code fehlerhaft ist oder dass Java 8 mit Fehlern gefüllt ist. Das bedeutet, dass Java 8 automatisch nach Problemen sucht und Sie über Probleme informiert, die Sicherheitsprobleme bei der Verwendung Ihrer Anwendung verursachen können.

Die SecurityException-Dokumentation wird in Java angezeigt. Netz. Natürlich wollen Sie wissen, worum es bei all dem Trubel geht.

Programmierung von Java: Wenn Fehler auftreten - Dummies

Die Wahl des Herausgebers

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Bearbeiten in Photoshop Elements 10 Schnellfoto-Bearbeitungsmodus - Schnuller

Schneller Foto-Bearbeitungsmodus ist eine abgespeckte Version des Modus "Full Photo Edit", der einfach grundlegende Fixingtools bereitstellt und mit einigen einzigartigen Funktionen aufwartet, z. B. eine Vorher-Nachher-Vorschau Ihres Bildes. Hier ist ein Schritt-für-Schritt-Workflow, den Sie im Schnellfoto-Bearbeitungsmodus verwenden können, um Ihre Fotos zu reparieren:

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Zum Optimieren von Photoshop Elements-Bildern mit Fotoeffekten - Dummies

Fotoeffekte in Photoshop Elements 11 funktionieren wie Anwenden von Filtern; Das Dialogfeld "Filtergalerie" bietet Ihnen zahlreiche Optionen zum Anwenden eines Filters. Das geführte Bedienfeld bietet Ihnen Filtereffekte und führt Sie dann durch die Schritte zum Anpassen von Helligkeitswerte, Ändern von Farbton und Sättigung und Durchführen weiterer Anpassungen zum Vervollkommnen des Ergebnisses. Sie ...

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Eingeben des Absatztyps in Photoshop Elements 11 - Dummies

Absatztyp in Photoshop Elements 11 ist ähnlich zu dem Text, den Sie in ein Textverarbeitungsprogramm eingeben, mit der Ausnahme, dass er in einem Textfeld oder einem Begrenzungsrahmen enthalten ist. Wenn Sie größere Textabschnitte haben, die Sie in ein Bild eingeben möchten, ist die Eingabe des Textes als Absatztyp die praktischste Option. Während ...

Die Wahl des Herausgebers

PHP-Anweisungen - Dummys

PHP-Anweisungen - Dummys

PHP ist eine Skriptsprache, die speziell für die Verwendung im Internet entwickelt wurde. Es enthält Funktionen, die Sie bei der Programmierung der Aufgaben unterstützen, die für die Entwicklung dynamischer Webanwendungen erforderlich sind. Diese Tabelle gibt einen kurzen Überblick über einige der Anweisungen, die Sie häufig verwenden werden: Anweisung Beschreibung array ("key" => "value", ...); Casts a ...

PHP-Schablonen-Systeme - Schablonen-Systeme

PHP-Schablonen-Systeme - Schablonen-Systeme

Können die Menge an Arbeit reduzieren, die Sie für die Erstellung einer Website in PHP benötigen. Wenn Sie eine Website erstellen, verwenden Sie häufig das gleiche Layout für die gesamte Website. Sie haben eine obere Portion, vielleicht mit einem Menü; ein Hauptinhaltsbereich; und ein unterer Teil, vielleicht mit Links oder ...

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Make MySQL Datenbank Änderungen mit den ALTER Query - Dummies

Die ALTER Query wird verwendet, um die Struktur von eine MySQL-Datenbank. In dieser Liste wird die Syntax für die Änderungen angezeigt, die Sie wahrscheinlich vornehmen möchten: ADD-Spaltenbezeichnung ALTER-Spaltenname SET-DEFAULT-Wert ALTER-Spaltenname DROP DEFAULT CHANGE-Spaltenname newcolname-Definition DROP-Spaltenname MODIFY-Spaltenname RENAME newtablename

Die Wahl des Herausgebers

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Hochgeschwindigkeitsdatencaching mit NoSQL - Dummies

Mit NoSQL haben Sie Hochgeschwindigkeits-Caching. Stellen Sie sich vor, Sie sind Bankangestellte und arbeiten mit drei anderen Kollegen zusammen. Jeder hat eine Reihe von Leuten, die bedient werden sollen. Einer der Kunden bleibt jedoch in der Schlange, um zu fragen, ob sein Scheck bereits eingelöst und der Betrag seinem Konto gutgeschrieben wurde. Wenn Sie ...

Wie man Einsichten aus Big Data kommuniziert - Dummies

Wie man Einsichten aus Big Data kommuniziert - Dummies

Big Data kann helfen, Einblicke zu gewinnen. Unternehmen gewinnen Wettbewerbsvorteile, wenn die richtigen Informationen zur richtigen Zeit an die richtigen Leute geliefert werden. Dies bedeutet, Erkenntnisse und Informationen aus Daten zu extrahieren und sie Entscheidungsträgern auf eine Weise zu vermitteln, die sie leicht verstehen. Schließlich sind Menschen weniger wahrscheinlich zu handeln, wenn sie ...

Zookeeper und HBase Reliability - dummies

Zookeeper und HBase Reliability - dummies

Zookeeper ist ein verteiltes Cluster von Servern, das gemeinsam zuverlässige Koordinations- und Synchronisationsdienste für Cluster-Anwendungen bereitstellt. .. Zugegeben, der Name "Zookeeper" mag auf den ersten Blick eine seltsame Wahl sein, aber wenn Sie verstehen, was es für einen HBase-Cluster tut, können Sie die Logik dahinter sehen. Beim Erstellen und Debuggen von verteilten Anwendungen ...