1a) Was leistet die Methode equals der Klasse Object?
Die Methode vergleicht ob zwei Objekte identisch (gleiche Reffernz) sind. Sie soll in abgeleiteten Objekten überschrieben werden.
b) Warum ist in Object keine Methode compareTo vorgesehen?
Die Methode compareTo vergleicht auf Ungleichheiten (kleiner, größer). Dies macht nicht bei allen Objekten sinn. Eine vergleichbare Implementierung wie equals wäre bei Object sinnlos. (Java bietet keine Pointer arethmitik)
2) Ergänzen Sie: Eine Exemplar-Methode muss den modifier public haben, wenn sie
entweder _ _ _ _ _
oder _ _ _ _
oder _ _ _ _
Ich verstehe nicht was hier erwartet wird. (Zugriff aus anderen Packeten?)
3) In welcher Beziehung muss der Typ einer Referenz zu der Klasse stehen, von der das referenzierte Exemplar kreiert wurde?
Gleicher Typ oder Typ einer Klasse von der diese Klasse abgeleitet wurde.
4) Schreiben Sie ine Exenplar-Methode add mit einem Integer-Parameter, die auch in einer UNterklasse liegen könnte (void add (Integer p { })
hmm, müsste ich jetzt nachdenken 😉
5)Die Methode equals mit dem Aufruf op1.equals(op2) ist eine typische Exemplar-Methode. Wie sähe der Aufruf einer Klassen-Methode gleicher Funktionalität typischerweise aus?
Klasse.equal(op1, op2)
6) Welche Wirkung hat das Casting einer Referenz mit dem Operator (Comparable)
Objekte welche das Interface Compareable implementieren können verglichen werden. Kann man z.B. für einen allgemeinen Sortieralgorithmus nutzen, welcher beliebige (compareable) Objekte sortieren kann.
7) Für das Sortieren durch Mischen unter Verwendung von 2 unverändert großen Arbeits-Arrays benötigt man darin bei n Werten n1+n2 Elemente. Der Mindest-Wert diesr Summe beträgt:
-> bei n=128:
-> bei n=129:
8)Was bedeutet "Natürliches Mischen"? Warum ist dieses für "Band-Sortieren" sicher reizvoller, als beim Sortieren in Arrays?
Das hatten wir mal auf einem Übungszettel in AD2. *g* Damit konnte man sogar mit einem Aufwand kleiner O(N log N), aber auch nur unter bestimmten Vorraussetzungen.
9) Beschreiben Sie durch Java-Text eine statische Funktion, die von einem Object-Array die Elemente ab Index k in einem neuen Array (passender Größe) bereitstellt.
10) Schreiben Sie eine Klasse zur Realisierung eines Float-Stapels auf Basis eines Array. Benötigt werden die Methoden pop, push, top und depth.
Für die Programmieraufgaben fehlte mir die Zeit/Lust. Hoffe mal es hilft trotzdem etwas weiter.