Basisklasse für sorting.BubbleSort, sorting.InsertionSort und sorting.SelectionSort.
Klassendiagramm für sorting.Sort:
Öffentliche Methoden | |
void | run () |
Die run()-Funktion wird automatisch ausgeführt, wenn der Thread mit start() aufgerufen wird. | |
int[] | getSortedArray () |
Diese Funktion gibt das Integerarray zurück. | |
void | showArray () |
Diese Funktion veranschaulicht Arraywerte durch grafische Ausgabe der Werte als vertikale, farbige Linien auf einem Panel. | |
void | setSettings (int[] aArray, Panel aPanel, Label aLabel) |
Diese Funktion wird benutzt um die Attribute theArray, thePanel und theLabel zu setzen. | |
Geschützte Methoden | |
void | doSort () |
Dies ist lediglich eine leere Sortierfunktion (muss von Unterklassen überschrieben werden). | |
void | exchange (int[] aArray, int index1, int index2) |
Diese Funktion vertauscht zwei Arrayelemente. | |
long | calcRuntime () |
Diese Funktion berechnet die Laufzeit des Threads. | |
Geschützte Attribute | |
long | startTime = 0 |
long | endTime = 0 |
long | runTime = 0 |
int[] | theArray |
Panel | thePanel |
Label | theLabel |
Diese Klasse stellt Funktionen und Eigenschaften zur Verfügung, die von allen Unterklassen benutzt werden. Beispielsweise benötigt jeder Sortieralgorithmus eine exchange()-Funktion um zwei Arrayelemente gegenseitig auszutauschen. Daher wird diese Funktion einmal in dieser Superklasse implementiert und steht dann allen abgeleiteten Klassen zu Verfügung. Andererseits stellt diese Superklasse jedoch lediglich eine leere Sortierfunktion zur Verfügung - die Sortierfunktion muss von den Unterklassen mit einem entsprechendem Sortieralgorithmus überschrieben werden (daher hat es auch keinen Sinn, von dieser Superklasse eine Instanz zu erzeugen - und daher ist diese Klasse auch abstrakt).
Definiert in Zeile 27 der Datei Sort.java.
|
Diese Funktion berechnet die Laufzeit des Threads.
Definiert in Zeile 90 der Datei Sort.java. Benutzt sorting.Sort.startTime. Wird benutzt von sorting.SelectionSort.doSort(), sorting.InsertionSort.doSort(), sorting.BubbleSort.doSort() und sorting.Sort.run(). |
|
Dies ist lediglich eine leere Sortierfunktion (muss von Unterklassen überschrieben werden).
Erneute Implementation in sorting.BubbleSort, sorting.InsertionSort und sorting.SelectionSort. Definiert in Zeile 66 der Datei Sort.java. Wird benutzt von sorting.Sort.run(). |
|
Diese Funktion vertauscht zwei Arrayelemente.
|
|
Diese Funktion gibt das Integerarray zurück. Diese Funktion kann benutzt werden um von außerhalb der Klasse Zugriff auf die sortierten Zahlen des Arrays zu erhalten.
|
|
Die run()-Funktion wird automatisch ausgeführt, wenn der Thread mit start() aufgerufen wird. Die run()-Funktion ruft die doSort()-Funktion auf, welche von Unterklassen überschrieben wird. Definiert in Zeile 42 der Datei Sort.java. Benutzt sorting.Sort.calcRuntime() und sorting.Sort.doSort(). Hier ist der Graph aller Aufrufe für diese Funktion: |
|
Diese Funktion wird benutzt um die Attribute theArray, thePanel und theLabel zu setzen.
Definiert in Zeile 122 der Datei Sort.java. Wird benutzt von DoxygenExample.sortArrays(), DoxygenExample.startBubbleSort(), DoxygenExample.startInsertionSort() und DoxygenExample.startSelectionSort(). |
|
Diese Funktion veranschaulicht Arraywerte durch grafische Ausgabe der Werte als vertikale, farbige Linien auf einem Panel.
Definiert in Zeile 100 der Datei Sort.java. Benutzt sorting.Sort.theArray und sorting.Sort.thePanel. |
|
|
|
|
|
Definiert in Zeile 29 der Datei Sort.java. Wird benutzt von sorting.Sort.calcRuntime(). |
|
Definiert in Zeile 33 der Datei Sort.java. Wird benutzt von sorting.SelectionSort.doSort(), sorting.InsertionSort.doSort(), sorting.BubbleSort.doSort() und sorting.Sort.showArray(). |
|
|
|
Definiert in Zeile 34 der Datei Sort.java. Wird benutzt von sorting.Sort.showArray(). |