Du bist nicht eingeloggt.

Login

Pass

Registrieren

Community
Szene & News
Locations
Impressum

Forum / Bits und Bytes

Objekt als Rückgabewert (Java)

RockBottom
Experte (offline)

Dabei seit 01.2003
1033 Beiträge

Geschrieben am: 10.12.2009 um 21:16 Uhr

Hallo,

habe gerade ein kleines Problem in Java...

Zitat:

Die Objekt-Operation addieren() erhält als Argument ein DemoKlasse-Objekt obj; sie liefert ein neues DemoKlasse-Objekt zurück, dessen Attributwert die Summe der Attributwerte des aktuellen Objekts und des Objekts obj ist. Das aktuelle Objekt und das Argument obj dürfen nicht verändert werden.


Jetzt bin ich mir nicht so sicher, wie ich das anstellen soll...
Mein bisheriger Versuch sieht so aus...

public Demoklasse addieren (DemoKlasse obj)
{
return new DemoKlasse((obj.getWert() + int Summand));
}

Anstelle des Summanden soll jetzt eben der Wert, der mit dem Objektwert addiert werden soll, obwohl ich schon mit der Art nicht zufrieden bin.

So...Frage 1.
Wie kann ich das bewerkstelligen, ohne einen weiteren Konstruktor?
Die Methode addieren kann laut Aufgabenstellung keinen weiteren Parameter enthalten.
Der allgemeine Konstruktor könnte natürlich noch einen Parameter entgegen nehmen, allerdings würde sich ja dennoch so gut wie nichts ändern.

Und Frage 2.

Was genau mache ich falsch :-D

Also ich habe es in der main methode versucht zu initialisieren, in dem ich einer Objektreferenz versuche eine neue Methode mit einem bestehenden Objekt.addieren() zuzuweisen...

Wäre für Hilfe dankbar...und sorry, wenn es vllt komisch ausgedrückt ist, ich bin schon seit fast 2 Tagen wach :-D



Freundschaft vor Vaterland - And I thought my jokes were bad

wbcm - 41
Fortgeschrittener (offline)

Dabei seit 09.2005
29 Beiträge
Geschrieben am: 10.12.2009 um 21:33 Uhr

irgendwie kann ich das Problem nicht ganz nachvollziehen oO
ist die addieren()-Funktion in der Demoklasse-Klasse? Ist der Parameter im Demoklasse-Konstruktor der Wert, den man mit getWert() bekommt? Wenn ja, warum sollte es dann nicht nach dem Prinzip

public Demoklasse addieren(Demoklasse obj) {
return new Demoklasse(obj.getWert() + this.getWert());
}
gehen?

in der main würde es dann einfach so aussehen:
...
Demoklasse obj1 = new Demoklasse(5);
Demoklasse obj2 = new Demoklasse(3);
Demoklasse ergebnis = obj1.addieren(obj2);
...
Thulsadoom - 36
Champion (offline)

Dabei seit 01.2006
2051 Beiträge

Geschrieben am: 10.12.2009 um 23:47 Uhr

Zitat von RockBottom:



public Demoklasse addieren (DemoKlasse obj)
{
return new DemoKlasse((obj.getWert() + int Summand));
}



du hast eigentlich nur ein problem: + int Summand kannste nicht machen, da du ja den wert des arguments nehmen sollst ( also wert von obj).

somit hat mein vorrschreiber da vollkommen richtig die methode getWert ( falls diese auh den wert ausgibt^^) dort eingefügt.

Warum? Weil ich es kann!

scw - 42
Experte (offline)

Dabei seit 09.2002
1836 Beiträge
Geschrieben am: 11.12.2009 um 10:58 Uhr

Und dann noch eine Kleinigkeit. Ich nehm mal an, Summand ist eine Klassenvariable?! Variablen schreibt man nach der Konvention immer mit Kleinbuchstaben am Anfang. Klassen dagegen immer mit einem Großbuchstaben :-)
  [Antwort schreiben]

Forum / Bits und Bytes

(c) 1999 - 2026 team-ulm.de - all rights reserved - hosted by ibTEC Team-Ulm

- Presse - Blog - Historie - Partner - Nutzungsbedingungen - Datenschutzerklärung - Jugendschutz -