Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » Methode in einer anderen Methode benutzen » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Methode in einer anderen Methode benutzen
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Lycaner
Eroberer


Dabei seit: 17.02.2013
Beiträge: 56

Methode in einer anderen Methode benutzen Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe bei java zwei Klassen.
Die erste Klasse ist Flasche und hat folgende Methode;

public double berechneInhalt(){
return this.dVolumen*this.dFüllstand;

Die zweite Klasse Kiste soll eine Kiste mit 9 Flaschen darstellen:

public Kiste(){
Flasche a1; Flasche a2;Flasche a3;Flasche a4;Flasche a5;
Flasche a6;Flasche a7;Flasche a8;Flasche a9;}

public double bInhalt(Vector<Kiste>k){
double erg=0;
for(int i = 0; i < k.size(); i++){

erg=erg+ /****wie kann ich hier auf die Methode berechneInhalt der Flasche
zugreifen?******/

}
return erg;
}
}
09.07.2013 17:39 Lycaner ist offline Beiträge von Lycaner suchen Nehmen Sie Lycaner in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hier mal ein kurzes Beispiel, bei 9 Flaschen rate ich dir aber zu einem Array.
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
public class Kiste {
	Flasche a1, a2, a3;
	public Kiste(Flasche a1, Flasche a2, Flasche a3){
		this.a1 = a1;
		this.a2 = a2;
		this.a3 = a3;
	}

	public double bInhalt(){
		double erg=0;
		
		erg=erg+ a1.berechneInhalt() + a2.berechneInhalt() + a3.berechneInhalt();
		return erg;
	}
}

Im Konstruktor definierst du nur Variablen, die weder initialisiert noch verwendet werden.

Für die Zukunft:
- lieber etwas mehr von deinem Programm anfügen, als zu wenig. Ich weiß nicht genau, was das werden soll, so kommt mir die Inhaltsberechnung seltsam vor: Volumen * Höhe, also von der Einheit m^4 verwirrt
- verwende [_code]...[_/code] (ohne Unterstrich), dann bleibt das alles schön eingerückt
- Java gehört nicht ins Unterforum theoretische Informatik / formale Sprachen, sondern in die praktische Informatik

__________________
Syntax Highlighting fürs Board (Link)
09.07.2013 22:30 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Lycaner
Eroberer


Dabei seit: 17.02.2013
Beiträge: 56

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Es sind alte Klausuraufgaben mit verschieden Aufgabenstellungen z.B.
die erste Aufgabe war, in einer Klasse Flasche zwei Konstruktoren zu erzeugen, bei einem soll er zwei Werte bekommen eins für Volumen und eins für den Füllstand(z.B50%) und der zweite soll keine Werte bekommen aber die beiden die Werte Volumen auf 0,75 und Füllstand auf 100% setzen.
Als zweite Aufgabe sollte die Klasse eine Methode berechneInhalt bekommen.
So sieht meine Klasse Flasche aus:

public class Flasche {
double dVolumen;
double dFüllstand;
public Flasche(){
dVolumen=0.75;
dFüllstand=100;
}
public Flasche(double dVolumen, double dFüllstand){
this.dVolumen=dVolumen;
this.dFüllstand=dFüllstand;
}
public double berechneInhalt(){
return this.dVolumen*this.dFüllstand;
}
}
Die dritte Aufgabe war, eine Klasse Kiste hinzufügen, die in einem Vector nur die Objekte Kiste speichert. Außerdem sollte die Klasse einen parameterlosen Konstruktor mit 9 Flaschen bekommen.
Die vierte Aufgabe war, eine berechneInhalt für die Kiste schreiben mit dem Zusatz, dass man die Methode berechneInhalt der Klasse Flasche verwendet.
10.07.2013 08:17 Lycaner ist offline Beiträge von Lycaner suchen Nehmen Sie Lycaner in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

bitte [ code]...[ /code]-Tags verwenden.
Wäre es nicht sinnvoller, den Füllstand der vollen Flasche auf 1 zu definieren, statt auch 100?

Hier nochmal die Kiste mit parameterlosem Konstruktor:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
public class Kiste {
	Flasche[] a;
	final static int anzahl = 9;
	public Kiste(){
		a = new Flasche[anzahl];
		for(int i = 0; i < anzahl; i++)
			a[i] = new Flasche();
	}

	public static double bInhalt(Vector<Kiste> v){
		double erg = 0;
		for(int kiste = 0; kiste < v.size(); kiste++)
		{
			for(int i = 0; i < anzahl; i++)
				erg += ((Kiste)v.elementAt(kiste)).a[i].berechneInhalt();
		}
		return erg;
	}
}



	public static void main(String[] args)
	{
		Vector<Kiste> k= new Vector<Kiste>();
		for(int i = 0; i < 5; i++) k.add(new Kiste());
		double d = Kiste.bInhalt(k);
		System.out.print(d);
	}

Den Aufruf, den du gesucht hast, siehst du in Zeile 15.

__________________
Syntax Highlighting fürs Board (Link)
10.07.2013 09:38 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Lycaner
Eroberer


Dabei seit: 17.02.2013
Beiträge: 56

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Vielen Dank.

Ehrlich gesagt, ich weiß nicht wie ich den [ code]...[ /code]-Tags verwende, deswegen verwende ich es nicht(((
10.07.2013 09:48 Lycaner ist offline Beiträge von Lycaner suchen Nehmen Sie Lycaner in Ihre Freundesliste auf
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

code:
1:
2:
3:
4:
5:
6:
7:
public static void main(String[] args)
{
	Vector<Kiste> k= new Vector<Kiste>();
	for(int i = 0; i < 5; i++) k.add(new Kiste());
	double d = Kiste.bInhalt(k);
	System.out.print(d);
}


Klicke mal bei meinem Beitrag auf "Zitat", dann siehst du, wie ich es gemacht habe.
Auf die gleiche Weise kannst du fett, kursiv, farbig, in anderer Schriftart... schreiben.

__________________
Syntax Highlighting fürs Board (Link)

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von eulerscheZahl: 10.07.2013 09:56.

10.07.2013 09:54 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
Karlito Karlito ist männlich
Kaiser


Dabei seit: 11.04.2011
Beiträge: 1.461

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hab mal den Thread verschoben.

Gruß,

Karlito
11.07.2013 11:56 Karlito ist offline E-Mail an Karlito senden Beiträge von Karlito suchen Nehmen Sie Karlito in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » Methode in einer anderen Methode benutzen