Sie müssen eine neue RunTimeException für EmptyStacks erstellen

8

So mag meine Aufgabe einfach klingen, aber sie hat mich verblüfft. Ich habe Code im Internet durchgesehen, aber ich komme nicht damit klar. Noch kann ich Machen Sie sich mit den Folien vertraut, die mein Lehrer geschrieben hat. Dies ist, was von mir verlangt wird.

Erstellen Sie einen neuen Laufzeitausnahmetyp namens EmptyStackException.

Ich habe jedoch keine Ahnung, wie ich die Methode, die Klasse, die Variable oder was auch immer machen muss, um die Anforderung zu erfüllen. Ich habe einige Klassen, die Implementierungen eines DynamicArrayStack und eines LinkedStack sind. Eine Schnittstelle für Stack.

Alle Hinweise wären sehr hilfreich.

Danke

Mjall2

    
Mjall2 21.03.2012, 23:22
quelle

3 Antworten

16

Erstellen Sie einen neuen Laufzeitausnahmetyp namens EmptyStackException.

create type wird von

erledigt %Vor%

Wenn wir jetzt wüssten, was wir in diesen neuen Typ schreiben sollen (a.k.a.-Klasse). In der Regel betrachten wir die Methoden in der Oberklasse und überschreiben diejenigen, die eine andere Behandlung benötigen. Im Folgenden habe ich einige von ihnen außer Kraft gesetzt, aber an die bestehende Klasse delegiert. Dies ist nicht erforderlich, wenn Sie keine Verhaltensänderungen vornehmen müssen.

%Vor%     
Jim 21.03.2012, 23:32
quelle
4

Um dies zu tun, müssen Sie die Klasse RuntimeException erweitern.

Es gibt zwei Arten von Ausnahmen in Java: nicht markierte und geprüfte Ausnahmen. RuntimeExceptions sind vom zweiten Typ. Dies bedeutet, dass sie nicht explizit behandelt und deklariert werden müssen.

Normalerweise verwendet man beim Schreiben von benutzerdefinierten Ausnahmen geprüfte Ausnahmen. Dies geschieht durch Erweiterung der Klasse Exception . Ich sehe keinen Anwendungsfall zum Erstellen einer benutzerdefinierten RuntimeException .

Wie auch immer, der folgende Code zeigt, wie Sie Ihre eigene RuntimeException schreiben:

%Vor%

Aus Ihrem Quelltext heraus könnten Sie dies mit folgender Anweisung verwenden:

%Vor%

Für weitere Informationen zu Ausnahmen empfehle ich Ihnen das folgende Tutorial

    
Matthew 21.03.2012 23:37
quelle
1

Klingt so, als würden Sie vielleicht Java lesen wollen. Sehen Sie sich die Java-Tutorials an, insbesondere über Ausnahmen .

Um es einfach auszudrücken, Ausnahmen sind eine besondere Art von Objekten, die ein Ereignis außerhalb der normalen Operation Ihres Codes darstellen, was Kontrollfluss wird unterlaufen . Zum Beispiel bedeutet ArrayIndexOutOfBoundsException , dass Ihr Code versucht hat, zu einer Position in einem Array zu indizieren, die nicht existiert, wie zum Beispiel -1.

Aufgrund ihrer Zugehörigkeit zu Fehlern haben Ausnahmen für neuere Programmierer oft eine schlechte Konnotation. Da Java jedoch objektorientiert ist, können Sie RuntimeException , um eigene, benutzerdefinierte Ausnahmetypen zu erstellen, was sehr nützlich für das Debuggen und die Code-Klarheit ist. Um eine benutzerdefinierte Ausnahme auszulösen, während der Code ausgeführt wird, müssen Sie

  1. hat die benutzerdefinierte Ausnahme definiert,
  2. erkenne den Ausnahmezustand und
  3. throw die Ausnahme.

Die einfachste Möglichkeit, Ihre benutzerdefinierte RuntimeException zu definieren, besteht darin, eine Klasse wie folgt zu definieren:

%Vor%

Dann würdest du das Exception like:

erkennen und werfen %Vor%

Dies sind nur die Grundlagen. Sie können auch benutzerdefinierte Ausnahmen im laufenden Betrieb definieren. Hoffe das hilft!

    
paislee 21.03.2012 23:34
quelle

Tags und Links