Du bist nicht eingeloggt.

Login

Pass

Registrieren

Community
Szene & News
Locations
Impressum

Forum / Bits und Bytes

Java Zugriff auf Feld im Konst.

RockBottom
Experte (offline)

Dabei seit 01.2003
1033 Beiträge

Geschrieben am: 08.01.2010 um 23:36 Uhr
Zuletzt editiert am: 08.01.2010 um 23:38 Uhr

Hi, habe folgende Frage,

werden Feld Deklarationen im UML Diagramm angegeben?

Ich muss ein Feld im Konstruktor anlegen also int feld[] = new int....

Wenn ich allerdings keine Deklaration außerhalb des Konstruktors anlege, kann ich natürlich in einer anderen Methode nicht darauf zugreifen...

Wie kann ich das denn bewerkstelligen? oO

Freundschaft vor Vaterland - And I thought my jokes were bad

-vermillion- - 31
Halbprofi (offline)

Dabei seit 12.2007
238 Beiträge

Geschrieben am: 08.01.2010 um 23:43 Uhr

soweit ich weiß deklarierst du es mit
klasse[] feldname;

i won't let go 'til it bleeds :)

RockBottom
Experte (offline)

Dabei seit 01.2003
1033 Beiträge

Geschrieben am: 08.01.2010 um 23:48 Uhr

Nunja...sag mir wenn ich mich täusche...aber der Typ selber sollte ja egal sein. Bin grad unterwegs, weshalb ich es nicht nachprüfen kann....

Vorwiegend gings mir eher darum, ob das im UML Diagramm vermerkt wird oder nicht?!

Freundschaft vor Vaterland - And I thought my jokes were bad

-vermillion- - 31
Halbprofi (offline)

Dabei seit 12.2007
238 Beiträge

Geschrieben am: 08.01.2010 um 23:52 Uhr

Zitat von RockBottom:

Nunja...sag mir wenn ich mich täusche...aber der Typ selber sollte ja egal sein. Bin grad unterwegs, weshalb ich es nicht nachprüfen kann....

Vorwiegend gings mir eher darum, ob das im UML Diagramm vermerkt wird oder nicht?!


hmm mit UML diagrammen kenn ich mich zu wenig aus...ich konnte nur versuchen auf den 2.teil der frage einzugehn :P

i won't let go 'til it bleeds :)

RockBottom
Experte (offline)

Dabei seit 01.2003
1033 Beiträge

Geschrieben am: 08.01.2010 um 23:54 Uhr

Schon ok..kein Problem..saß heute Abend fast ne Stunde dran und konnte mir einfach keinen Reihm machen...das wird mich jetzt nur bis morgen beschäftigen, bis ich wieder weiter machen kann :-)

Freundschaft vor Vaterland - And I thought my jokes were bad

-vermillion- - 31
Halbprofi (offline)

Dabei seit 12.2007
238 Beiträge

Geschrieben am: 09.01.2010 um 00:02 Uhr

Zitat von RockBottom:

Schon ok..kein Problem..saß heute Abend fast ne Stunde dran und konnte mir einfach keinen Reihm machen...das wird mich jetzt nur bis morgen beschäftigen, bis ich wieder weiter machen kann :-)


:D
Na dann viel glück. :)
Wobei ich auch sagen muss, dass de in anderen foren bei solchen fragen mehr glück haben würdest...

i won't let go 'til it bleeds :)

enderep12 - 37
Anfänger (offline)

Dabei seit 07.2005
2 Beiträge
Geschrieben am: 09.01.2010 um 00:02 Uhr
Zuletzt editiert am: 09.01.2010 um 00:05 Uhr

du kannst in jeder methode drauf zugreifen...

das array wird ja im konstruktor deklariert, ob mit int array[] = new int[x] oder mit int[] array = new int[x] is egal...

sobald du das objekt (des konstruktors) erzeugst hast du automatisch in allen methoden auch zugriff auf das array, einfach mit objektname.array[x] (jetzt in meinem beispiel... bei dir wärs halt objektname.feld[x] oder wie auch immer du dein array nennst)


und im UML Diagramm hast du normalerweise nur im obersten feld die klasse, im mittleren die variablennamen inkl typ (also bei dir z.B. int[] array) und im untersten die methodennamen
RockBottom
Experte (offline)

Dabei seit 01.2003
1033 Beiträge

Geschrieben am: 09.01.2010 um 00:25 Uhr
Zuletzt editiert am: 09.01.2010 um 00:25 Uhr

Hi erst mal...

Also ich hab es vorher dann nur verpeilt oder....

Jetzt pass auf...
Ich kann natürlich das Feld im Konstruktor deklarieren UND ein Objekt erstellen...

Wenn ich in der Klasse allerdings Methoden habe, die mit dem Feld arbeiten (z.B. initialisieren) kann ich die Klasse selber ja nicht kompilieren, auf Grund der Tatsache, weil ich erst eine Deklaration benötige dir zur Laufzeit schon existiert

Bsp:

Zitat:


Konstruktor()
{
int feld[] = new int[x]
}

methode()
{
feld[0] = 2;
}

geht nicht..

funktionieren würde es nur mit

Zitat:

int feld[];

Konstruktor()
{
int feld[] = new int[x]
}

methode()
{
feld[0] = 2;
}


verstehst du?
Deshalb die Frage ob ein Feld bei den Attributen mit angegeben wird oder eben nicht....in meinem Beispiel steht nämlich keins da...


Gruß

Freundschaft vor Vaterland - And I thought my jokes were bad

enderep12 - 37
Anfänger (offline)

Dabei seit 07.2005
2 Beiträge
Geschrieben am: 10.01.2010 um 00:46 Uhr
Zuletzt editiert am: 10.01.2010 um 00:48 Uhr

das würd so aber auhc nich gehn, dann müsstest du

Zitat:


private class Konstruktor {
private int[] feld;
Konstruktor() {
feld = new int[5];
}

void methode() {
feld[0] = 2;
}
}


schreiben ;) (jetzt nur mal beispielsweise)
und wenn du die variablen (bzw das array) als klassenvariablen erstellst (wie jetzt in dem beispiel) - dann muss die auch im UML diagramm angegeben werden...

(und wenn du die so deklarierst, deklarier sie als protected oder private.... is sauberer)
  [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 -