Methodenaufruf über ein Objekt einer anderen Klasse

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo ich habe folgende Klassen initialisiert: Klasse Akademiker, Informatiker, Historiker sowie Aufgabe5Client.

Nun möchte ich ein Methode über ein Objekt aufrufen. Das geht ja normalerweise durch:
Instanzvariable. Methodenname();

Leider meckert da der Compiler obwohl die Methode ja public ist. Wo liegt nur das Problem?



Klasse1:

public class Akademiker {

void getInfo(){
System.out.println("Ich bin ein Akademiker. ");
}


}



Klasse 2:


public class Informatiker extends Akademiker {

void getInfo() {
System.out.println("Ich bin ein Informatiker. ");
}

}

Klasse 3:

public class Historiker extends Akademiker {

Historiker historiker = new Historiker();

void getInfo() {
System.out.println("Ich bin ein Historiker. ");
}
}

Klasse 4:

public class Aufgabe5Client {
public static void main(String[] args) {
Informatiker informatiker=new Informatiker();
Historiker historiker = new Historiker();
Akademiker akademiker=new Akademiker();

informatiker.
}
public void rede(Akademiker akademiker) {
akademiker.getInfo();
}
}



Es wäre wirklich nett, wenn Ihr mir auf die Sprünge helfen könntet.
Danke vorab.

:)
 
G

Guest

Gast
Also er meckert an der rot markierten Stelle:

public class Aufgabe5Client {
public static void main(String[] args) {
Informatiker informatiker=new Informatiker();
Historiker historiker = new Historiker();
Akademiker akademiker=new Akademiker();

informatiker.rede(Informatiker informatiker);

}
public void rede(Akademiker akademiker) {
akademiker.getInfo();
}
}
 

kleiner_held

Top Contributor
informatiker.rede(informatiker);
Informatiker fuehren also wieder mal Selbstgespraeche :)

Durch die fehlenden Code-Tags ist es zwar schwer zu erkennen, aber die rede(..) Methode scheint zur Klasse Aufgabe5Client zu gehoeren, sehe ich das richtig?
 
G

Guest

Gast
Also ich hab das jetzt mit informatiker.rede(informatiker) versucht.
Das kann ja gar nicht gehen, da informatiker schließlich keine Methode rede enthält. Also kann ich auch nicht über die Instanz Informatiker auf rede() zugreifen.

So weit bin ich schon einmal.

Ich habe den Das Problem wie folgt gelöst, leider mit einem kleinen, aber schwerwiegenden Haken.

Code:
public class Aufgabe5Client {
	public static void main(String[] args) {
		
		Historiker historiker = new Historiker();
		Akademiker akademiker=new Akademiker();
		Informatiker informatiker=new Informatiker();
	
		informatiker.rede(informatiker);

	}
	public static void rede(Akademiker akademiker) {
		akademiker.getInfo();
	}
}

Nun wirft er mir aber eine Exception:
Exception in thread "main" java.lang.StackOverflowError
at AufgabeSturm.Akademiker.<init>(Akademiker.java:3)
at AufgabeSturm.Historiker.<init>(Historiker.java:3)
at AufgabeSturm.Historiker.<init>(Historiker.java:5)
 
G

Guest

Gast
Änderung in Zeile 9:

So kann ich es zu mindest einmal compilieren. Danach kommt aber leider die Exception wie oben beschrieben

Code:
public class Aufgabe5Client {
	public static void main(String[] args) {
		
		Historiker historiker = new Historiker();
		Akademiker akademiker=new Akademiker();
		Informatiker informatiker=new Informatiker();
	
		rede(informatiker);

	}

	public static void rede(Akademiker akademiker) {
		akademiker.getInfo();
	}
}
 
S

SlaterB

Gast
du erstellst ein Objekt der Klasse Historiker,
darin ist eine Exemplarvaraible
> Historiker historiker = new Historiker();
definiert,

also wird beim Erstellen des Historikers gleich noch ein Historiker angelegt,
was passiert wohl beim Erstellen dieses zweiten Historikers?
genau das gleiche, es wird ein dritter angelegt,
4.,
5.,
6.,
....
StackOverflow, quasi sowas wie eine Endlosschleife, falls dir das was sagt

ein Objekt sollte nie im Konstruktor sich selber nochmal erzeugen
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Methodenaufruf über SQL UPDATE Java Basics - Anfänger-Themen 8
C Methodenaufruf mit geänderten Argumenten Java Basics - Anfänger-Themen 10
S Methoden Methodenaufruf rekursiv zählen Java Basics - Anfänger-Themen 4
N methodenaufruf for each geht nicht Java Basics - Anfänger-Themen 2
K Methodenaufruf /-ausgabe Java Basics - Anfänger-Themen 5
O Methodenaufruf Java Basics - Anfänger-Themen 5
V Neue Ausgabe von toString nach Methodenaufruf Java Basics - Anfänger-Themen 9
Queiser Methodenaufruf Java Basics - Anfänger-Themen 2
J Vererbung und Methodenaufruf Java Basics - Anfänger-Themen 11
I Java Methodenaufruf Java Basics - Anfänger-Themen 9
A OOP Methodenaufruf in einer anderen Klasse Java Basics - Anfänger-Themen 2
G Methoden Probleme beim Methodenaufruf Java Basics - Anfänger-Themen 2
M Methodenaufruf in der Main Datei funzt nicht Java Basics - Anfänger-Themen 13
BadBat Klassen instanz als variable + methodenaufruf Java Basics - Anfänger-Themen 4
M Methodenaufruf in Methode Java Basics - Anfänger-Themen 6
M Objekt Name für MethodenAufruf nachträglich zuweisen? Java Basics - Anfänger-Themen 2
J if() mit Methodenaufruf kombiniert (Pixelerkennung) Java Basics - Anfänger-Themen 3
A Probleme beim Methodenaufruf von Object[] ! Java Basics - Anfänger-Themen 12
A Probleme beim Methodenaufruf von char[] ! Java Basics - Anfänger-Themen 10
T Rekursiver Methodenaufruf funktioniert nicht Java Basics - Anfänger-Themen 7
D Methoden g.setColor funktioniert nicht bei Methodenaufruf in anderer Klasse Java Basics - Anfänger-Themen 1
M Methoden Methodenaufruf allgemein Java Basics - Anfänger-Themen 3
H Ist Math.Random() eine Methode oder ein Methodenaufruf (Klausurfrage) Java Basics - Anfänger-Themen 4
O Methodenaufruf Java Basics - Anfänger-Themen 6
F Methodenaufruf Java Basics - Anfänger-Themen 1
F Erste Schritte Label Text vor Methodenaufruf setzen Java Basics - Anfänger-Themen 17
J Array mit Methodenaufruf Java Basics - Anfänger-Themen 2
S Problem bei Vererbung und Methodenaufruf Java Basics - Anfänger-Themen 3
OnDemand Methodenaufruf Java Basics - Anfänger-Themen 3
A Methoden Benutzerdefinierter Methodenaufruf Java Basics - Anfänger-Themen 4
O Methodenaufruf - Inhaltsveränderung Java Basics - Anfänger-Themen 23
G Methodenaufruf anderer Klasse Java Basics - Anfänger-Themen 18
L Einfacher Methodenaufruf vs. Objekt Java Basics - Anfänger-Themen 4
O Methodenaufruf im Konstruktor Java Basics - Anfänger-Themen 6
G was ist ein Methodenaufruf mit (){}? Java Basics - Anfänger-Themen 6
S Methoden Klassen Definition - Methodenaufruf Java Basics - Anfänger-Themen 7
K Methoden Methodenaufruf für BufferedWriter .. Java Basics - Anfänger-Themen 5
feardorcha Methodenaufruf Übergabe- und Rückgabewert Java Basics - Anfänger-Themen 5
W Methodenaufruf innerhalb einer Klasse - static vs. this Java Basics - Anfänger-Themen 3
A Problem bei Methodenaufruf Java Basics - Anfänger-Themen 6
B Parameterausführung bei Methodenaufruf Java Basics - Anfänger-Themen 8
A Methodenaufruf Java Basics - Anfänger-Themen 4
P Vererbung Methodenaufruf funktioniert aber Wertzuweisung von Variablen nicht Java Basics - Anfänger-Themen 9
S methodenaufruf Java Basics - Anfänger-Themen 8
G Erste Schritte Methodenaufruf, Variablen-Deklaration Java Basics - Anfänger-Themen 6
L Methodenaufruf in main() Java Basics - Anfänger-Themen 3
M Methodenaufruf in for-Schleife - nur 1 mal ausgegeben Java Basics - Anfänger-Themen 3
I Externer Methodenaufruf, Punkt-Notation Java Basics - Anfänger-Themen 11
I Methoden Rückverfolgung Methodenaufruf Java Basics - Anfänger-Themen 15
E Methoden Wie kann ich eine Methode so schreiben, dass Methodenaufruf polymorph erfolgen kann? Java Basics - Anfänger-Themen 8
M Methoden Methodenaufruf mit .class. Java Basics - Anfänger-Themen 2
J rekursiver Methodenaufruf Java Basics - Anfänger-Themen 12
K Klassen this-Referenz und Klassen/Methodenaufruf Syntax Java Basics - Anfänger-Themen 3
T Java mehrfacher Methodenaufruf Java Basics - Anfänger-Themen 15
L Methodenaufruf aus anderer Klasse Java Basics - Anfänger-Themen 5
B Quicksort --> Methodenaufruf Java Basics - Anfänger-Themen 10
O Methodenaufruf Java Basics - Anfänger-Themen 4
A nullPointerException bei Methodenaufruf Java Basics - Anfänger-Themen 16
J Vererbung, Methodenaufruf Java Basics - Anfänger-Themen 4
M Problem bei Methodenaufruf aus ActionListener Java Basics - Anfänger-Themen 5
G Methodenaufruf aus der Kommandozeile Java Basics - Anfänger-Themen 28
N Methodenaufruf funtioniert nicht Java Basics - Anfänger-Themen 3
C Methodenaufruf mit Variablen die gesetzt werden Java Basics - Anfänger-Themen 10
Antoras mit ActionListener/Methodenaufruf Textfelder zeichnen Java Basics - Anfänger-Themen 4
G Dynamischer Methodenaufruf Java Basics - Anfänger-Themen 3
H ungültige methodenaufruf Java Basics - Anfänger-Themen 16
G Methodenaufruf Java Basics - Anfänger-Themen 3
G Frage zu Oberklasse bei Methodenaufruf Java Basics - Anfänger-Themen 2
V Dynamischer Klassen bzw. Methodenaufruf Java Basics - Anfänger-Themen 6
V Wie und wieso geht dieser Methodenaufruf? Java Basics - Anfänger-Themen 2
S Methodenaufruf Java Basics - Anfänger-Themen 6
G Methodenaufruf in der for-Schleife mit Array Java Basics - Anfänger-Themen 7
L hsqldb Methodenaufruf Java Basics - Anfänger-Themen 10
K synchron und asynchroner Methodenaufruf Java Basics - Anfänger-Themen 17
R Fehler bei Methodenaufruf Java Basics - Anfänger-Themen 2
G Methodenaufruf Java Basics - Anfänger-Themen 3
T NullPointerException bei Methodenaufruf Java Basics - Anfänger-Themen 2
G Methodenaufruf Java Basics - Anfänger-Themen 10
K Klassenübergriefendes Methodenaufruf Problem Java Basics - Anfänger-Themen 6
S methodenaufruf. Java Basics - Anfänger-Themen 16
G methodenaufruf Java Basics - Anfänger-Themen 4
E Methodenaufruf mittels variable? kA Java Basics - Anfänger-Themen 5
G methodenaufruf Java Basics - Anfänger-Themen 3
G methodenaufruf Java Basics - Anfänger-Themen 5
W Überschreiben und Methodenaufruf Java Basics - Anfänger-Themen 3
L Methodenaufruf zwischen Klassen Java Basics - Anfänger-Themen 3
C Methodenaufruf mit throws IOException Java Basics - Anfänger-Themen 2
richis-fragen GlassPane über JScrollPane legen Java Basics - Anfänger-Themen 6
A Server - Client Nachrichtenaustausch über Eventbus Java Basics - Anfänger-Themen 12
P Neue Java v8 JRE Version nicht über alte drüber installierbar: Wie sonst? Java Basics - Anfänger-Themen 7
D Downloadfortschritt von Datei über Google Drive API v3 Java Basics - Anfänger-Themen 10
B großzügiges Pixelraster über Bildschirm legen Java Basics - Anfänger-Themen 7
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
L Beim Java Programmstart, mehrere Parameter über die Kommandozeile übergeben Java Basics - Anfänger-Themen 9
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
H Eine Methode über Actionlistener beenden Java Basics - Anfänger-Themen 8
S Java über SSH Java Basics - Anfänger-Themen 13
X Wie erreiche ich, dass ein Robot weitere Attribute hat, die nicht materialisiert sind, sondern nur über get/ set-Methoden simuliert sind? Java Basics - Anfänger-Themen 1
M Wie können Klassen nicht-materialisierte Attribute haben, die nur über get/ set-Mehoden simuliert sind? Java Basics - Anfänger-Themen 6
D Best Practice Ausgabe über direkte Ausgabe oder try-catch? Java Basics - Anfänger-Themen 13

Ähnliche Java Themen

Neue Themen


Oben