Erklärungshilfe

Berta

Mitglied
hallo forum,



ich hab ne frage und zwar hab ich folgendes:

eine klasse baum mit diesen methoden:
public int wieHochBistDu()
public static void sagHallo()

Und folgende Klasse TestBaum:
Java:
 class TestBaum{
public static void main (String[] args){
 Baum b =new Baum(); 
 int i = b.wieHochBistDu();
 int j = Baum.wieHochBistDu();
 b.sagHallo();
 Baum.sagHallo();
 }
 }

wisst ihr in welcher zeile ein fehler beim kompilieren ist?

ich selber bin unsicher und denke es ist int j= baum.wiehochbistdu, weil es keine statische methode ist.
könnt ihr mir helfen?
 

XHelp

Top Contributor
Die Klasse Baum zu machen ist ja keine schwarze Magie:
Java:
class Baum {
  public int wieHochBistDu() {
    System.out.println("wieHochBistDu");
    return 0;
  }
  public static void sagHallo() {
    System.out.println("Hallo");
  }
}
 

Berta

Mitglied
noch ne frage, was macht super eig.


ruft innerhalb einer Subklasse den Konstruktor der Superklasse auf oder

ruft innerhalb einer Superklasse den Konstruktor einer Subklasse auf.

das erste oder?
 

bobbsen

Mitglied
Wenn du in einer Klasse bist, wieso sollte super() dann eine Subklasse aufrufen, von der es nebenbei unzählige geben kann (aber nicht muss)?
 
B

Biene90

Gast
Ich habe eine Aufgabe bekommen und ich bekomme das überhaupt nicht hin kann mir hier i-wer helfen die Aufgabe zu lösen?




Aufgabe 2:
Die folgenden Klassen implementieren die Ihnen aus der Vorlesung bekannte Datenstruktur „verkettete Liste“:
class Element {
int wert;
Element naechstes;
Element(int v, Element n) {
this.wert = v;
this.naechstes = n;
}
}
class Liste {
Element erstes, letztes;
Liste() {
this.erstes = null;
this.letztes = null;
}
void hinzufuegen(int i) { // Anhaengen am Ende
Element elem = new Element(i, null);
if (this.erstes == null) {
this.erstes = elem;
this.letztes = elem;
} else {
this.letztes.naechstes = elem;
this.letztes = elem;
}
}
}
Leiten Sie von der Klasse Liste eine Klasse EListe ab, die eine zusätzliche Methode void verdoppeln(int i) definiert. Ein Aufruf der Methode soll bewirken, dass alle Elemente der Liste mit dem Wert des aktuellen Parameters i verdoppelt werden. Die Klassen Element und Liste dürfen nicht verändert werden.
Beispiel:
Die Liste
5 -> 4 -> 3 -> 4 -> 4 -> 2 -> 2 -> 1
wird durch den Aufruf der Methode verdoppeln(4) zu der Liste
5 -> 4 -> 4 -> 3 -> 4 -> 4 -> 4 -> 4 -> 2 -> 2 -> 1
 
G

Gast2

Gast
Mach dafür lieber nen neues Thema auf, hier passt das ja nicht wirklich rein. Und poste dann direkt noch deinen Lösungsansatz, das ist sonst mit sicherheit die erste Antwort die du bekommst ;)
 

jgh

Top Contributor
Die Liste
5 -> 4 -> 3 -> 4 -> 4 -> 2 -> 2 -> 1
wird durch den Aufruf der Methode verdoppeln(4) zu der Liste
5 -> 4 -> 4 -> 3 -> 4 -> 4 -> 4 -> 4 -> 2 -> 2 -> 1

wenn du mir das mal in Worten erklären könntest...dann könnte ich dir helfen. Wenn aus 8 Elementen(?) beim Aufruf 11 Elemente(?) werden, kann doch irgendwas nicht stimmen...oder lese ich das falsch?
 

jgh

Top Contributor
ah, thx...wobei ich dann pers. einen Methodennamen
Code:
verdoppelnVon(int i)
,
Code:
verdoppelnDer(int i)
weitaus eindeutiger gefunden hätte...aber gut das es EikeB gibt :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
V_Fynn03 Methoden Erklärungshilfe Java Basics - Anfänger-Themen 17

Ähnliche Java Themen


Oben