Hallo,
Für die Universität mache ich grad eine Übungsaufgabe zu Verketteten Listen. So weit so gut, jedoch bekomm ich nun seit 1 Stunde probieren jedes mal den "No such Field error". Ich habe bereits gegoogelt und alte .class Dateien gelöscht, um das Terminal erneut kompilieren zu lassen aber der Fehler geht nicht weg. Hat jemand eine Idee woran es liegen könnte? Im Folgenden meinen Code Ausschnitt:
Der Error verweist immer auf die Lines:
head.data = null;
oder
ele.data = new Termin(other.tag,other.monat,other.jahr,other.todo);
Deswegen gehe ich davon aus, dass irgendetwas mit data nicht stimmt. Was konnte ich noch nicht herausfinden. Die Klasse Termin existiert natürlich auch und auf Anfrage poste ich sie, jedoch wurde das meiste dieser Klasse von der Uni selbst vorgegeben.
Ich hoffe auf schnelle Rückmeldung
Für die Universität mache ich grad eine Übungsaufgabe zu Verketteten Listen. So weit so gut, jedoch bekomm ich nun seit 1 Stunde probieren jedes mal den "No such Field error". Ich habe bereits gegoogelt und alte .class Dateien gelöscht, um das Terminal erneut kompilieren zu lassen aber der Fehler geht nicht weg. Hat jemand eine Idee woran es liegen könnte? Im Folgenden meinen Code Ausschnitt:
Java:
class Listenelement {
Termin data;
Listenelement next;
}
public class Liste {
Listenelement head; // Pseudoelement fuer den Kopf der Liste
Listenelement z; // Pseudoelement fuer das Ende der Liste
// leere Liste erzeugen
public Liste(){
head = new Listenelement();
z = new Listenelement();
head.data = null;
head.next = z;
z.data = null;
z.next = z;
}
// Ausgabe aller Elemente der Liste
public void print(){
Listenelement ele = head.next;
while (ele != z){
System.out.println(ele.data);
ele = ele.next;
}
}
/* *** Teilaufgabe (b) *** */
public void insertSorted(Termin other){
Listenelement zeiger = head.next;
if(zeiger.data.istVorher(other)==true)
{
Listenelement ele = new Listenelement();
Listenelement zweites = new Listenelement();
zweites = head;
ele.next = head.next;
ele.data = new Termin(other.tag,other.monat,other.jahr,other.todo);
head = ele;
head.next = zweites;
}
}
public static void main(String[] args) {
Liste liste1 = new Liste(); // neue Liste anlegen
// Liste füllen
liste1.insertSorted(new Termin(14,10,2016,"Zahnarzt"));
liste1.insertSorted(new Termin(15,12,2016,"Klausur PP1"));
liste1.insertSorted(new Termin(19,11,2016,"Theater"));
liste1.insertSorted(new Termin(1,1,2017,"Konzert"));
liste1.insertSorted(new Termin(21,12,2016,"Vortrag"));
System.out.println("Liste 1: ");
liste1.print();
System.out.println("*****************");
Der Error verweist immer auf die Lines:
head.data = null;
oder
ele.data = new Termin(other.tag,other.monat,other.jahr,other.todo);
Deswegen gehe ich davon aus, dass irgendetwas mit data nicht stimmt. Was konnte ich noch nicht herausfinden. Die Klasse Termin existiert natürlich auch und auf Anfrage poste ich sie, jedoch wurde das meiste dieser Klasse von der Uni selbst vorgegeben.
Ich hoffe auf schnelle Rückmeldung