Instanzen in einem Feld erzeugen

Status
Nicht offen für weitere Antworten.
G

gast

Gast
hi hab folgenden Code:

Code:
class FhGotchi
{
 private int alter;
 private double gewicht;
 private int laune;
 private char geschlecht;
 private int zunahme_gramm;
 private static FhGotchi [] kindergarten_ref;

 public FhGotchi (double gewicht, char geschlecht)
 {
  if (gewicht >= 10.0 && gewicht <= 50.0)
  {
   if (geschlecht == 'm' ||geschlecht == 'M' || geschlecht == 'W' || geschlecht == 'w')
   {
   this.gewicht = gewicht;
   this.geschlecht = geschlecht;
   }
  }
  else
  {
   this.gewicht = 25.0;
   this.geschlecht = 'm';
  }//end if
  this.alter = 0;
  this.laune = 5;
 }//end Konstruktor Fhgotchi

 public int getAlter ()
 {
  return alter;
 }//end method getAlter;

 public double getGewicht ()
 {
  return gewicht;
 }//end method getGewicht

 public int getLaune ()
 {
  return laune;
 }//end method getLaune

 public char getGeschlecht ()
 {
  return geschlecht;
 }//end method getGeschlecht

 public void fuettern (int kalorien)
 {
  if ( kalorien >= 1 && kalorien <= 100)
  {
   zunahme_gramm = kalorien / 6;
   gewicht = gewicht + zunahme_gramm;
   if ( (geschlecht == 'm' || geschlecht == 'M') && (laune > 1 && laune < 10) && kalorien > 60 )
    --laune;
  }
  else
   System.out.println ("Nein - das esse ich nicht!");
 }//end method fuettern

 public void altern ()
 {
  if (laune > 1 && laune <= 10)
   --laune;
  
  ++alter;
 }//end method altern


 public boolean spielen (int zahl)
 {
  if (laune >= 1 && laune < 10)
   ++laune;
  if (zahl % 3 == 0)
   return true;
  else
   return false;
 }//end method spielen


 public void kindergarten ()
 {
  kindergarten_ref = new FhGotchi [200];
  FhGotchi kind_ref;
  for (int i = 0; i != 99; i++)
  {
   kind_ref = new FhGotchi (20, 'w');
   kindergarten_ref[i] = kind_ref;
  }// end for i-----------> weiblich gotchis erzeugen

  for (int i = 100; i != 200; i++)
  {
   kind_ref = new FhGotchi (30, 'm');
   kindergarten_ref [i] = kind_ref;
  }//end for i ------------> männliche gotchis erzeugen 
 }//end method kindergarten


 public void kindergarten_fuettern ()
 {
  
  FhGotchi kinderGarten_ref;
  for (int i = 0; i != 199; i++)
  {
   kindergarten_ref = kindergarten_ref[i];
   kindergarten_ref.fuettern (45);
  }//end for i
 }//end method kindergarten_fuettern


}//end class Fhgotchi

bei den letzten zwei methoden bin ich mir irgendwie nicht sicher.
kindergarten ()
Ich soll 200 Gotchi's erzeugen, 100 männlich 100 weiblich

kindergarten_fuettern ()
Ich soll jedes Gotchi mit 45 kalorien füttern

aber irgendwie klappt das nicht
bekomme folgende Fehlermeldungen:


FhGotchi.java:106: incompatible types
found : FhGotchi
required: FhGotchi[]
kindergarten_ref = kindergarten_ref;
^

symbol : method fuettern(int)
location: class FhGotchi[]
kindergarten_ref.fuettern (45);

hoffe mir kann jemand helfen, das zeug ist bei uns prüfungsrelevant und irgendwie hab ich keinen peil :oops:
 
G

Guest

Gast
die Fehlermeldungen sind aus der Welt, aber wenn ich die zwei letzten methoden nutzen will, mit dem code hier:

Code:
class Fh_test
{
 public static void main (String [] args)
 {
  char befehl;
  FhGotchi peter_ref = new FhGotchi (20, 'w');
  StdEingabe instream_ref = new StdEingabe ();
  

  do 
  {
   System.out.println ("Befehle \n\nX fuer Beenden \nA fuer Alter \nG für Gewicht \nL fuer Laune \nF fuer fuettern \nS fuer Spielen \nK fuer Kindergarten \n1 fuer Kindergarten futtern");
   befehl = instream_ref.liesCharacterSkipLine();

   switch (befehl)
   {
    case 'k':
    peter_ref.kindergarten ();
    break;
    case '1':
    peter_ref.kindergarten_fuettern ();
    break;
    default:
    break;
   }//end switch befehl
  }
  while (befehl != 'x');
 }//end method main
}//end Fh-test

dann kommt die Exception:


Exception in thread "main" java.lang.NullPointerException
at FhGotchi.kindergarten_fuettern(FhGotchi.java:107)
at Fh_test.main(Fh_test.java:21)
 

PoiSoN

Bekanntes Mitglied
Hallo,

falls du das noch nicht geändert hast:

schreibe in deinen for-Schleifen nicht != 199, sondern <= 199. Auch 5000 ist ungleich 199,
aber so viele Gotchis hast du ja nicht erzeugt ;)

Lösche Zeile 107, welchen Sinn macht die?
Ändere Zeile 108 in kindergarten_ref.fuettern(45); denn du willst doch bestimmte
Elemente (Gotchis) im Array füttern.
 
G

Guest

Gast
Code:
 public void kindergarten ()
 {
  kindergarten_ref = new FhGotchi [200];
  FhGotchi kind_ref;
  for (int i = 0; i != 99; i++)
  {
   kind_ref = new FhGotchi (20, 'w');
   kindergarten_ref[i] = kind_ref;
  }// end for i-----------> weiblich gotchis erzeugen

  for (int i = 100; i != 200; i++)
  {
   kind_ref = new FhGotchi (30, 'm');
   kindergarten_ref [i] = kind_ref;
  }//end for i ------------> männliche gotchis erzeugen 
 }//end method kindergarten


 public void kindergarten_fuettern ()
 {
  
  
  for (int i = 0; i <= 199; i++)
  {
   kindergarten_ref[i].fuettern(45);
  }//end for i
 }//end method kindergarten_fuettern

so siehts jetzt aus, trotzdem kommt NullPointerException
 
G

Guest

Gast
:applaus: :applaus:

vielen vielen dank, keine Exceptions, sollte also laufen.
jetzt sollte ich für die klausur gewapnet sein

[schild=1 fontcolor=000000 shadowcolor=C0C0C0 shieldshadow=1]PoiSon rules!!![/schild]
 

PoiSoN

Bekanntes Mitglied
Um mich mal selbst zu zitieren :roll:
PoiSoN hat gesagt.:
Auch 5000 ist ungleich 199, aber so viele Gotchis hast du ja nicht erzeugt
Du sagst kindergarten_ref = new FhGotchi[200]; hast also 200 Elemente (0 bis 199). Die for-Schleife
läuft und läuft... ein Ende hast du nicht angegeben. Wenn also versucht wird, Element 200 anzusprechen
- was es ja nicht gibt - dann knallts... Kleiner gleich (<=) läuft nur bis zum angegebenen Wert, dann
ist die Schleife abgearbeitet.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z Was habe ich davon mit einem Datentyp verschiedene Instanzen zu haben? Java Basics - Anfänger-Themen 6
A Mehrere Instanzen einer eigenen Klasse in einem Array Java Basics - Anfänger-Themen 5
K Eindeutige Instanzen von einem Objekt Java Basics - Anfänger-Themen 13
J Klassen Instanzen einer Klasse in einer anderen unabhängigen Klasse nutzen Java Basics - Anfänger-Themen 4
G zwei Instanzen einer Klasse Java Basics - Anfänger-Themen 29
C Was machen mit nicht mehr verwendeten Instanzen ? Java Basics - Anfänger-Themen 18
C Instanzen, wann muss ich Instanzen erzeugen & wo?) Java Basics - Anfänger-Themen 23
A Klassen Zugriff auf Instanzen Java Basics - Anfänger-Themen 2
F Mehrere Instanzen der Klasse A EINER Instanz der Klasse B übergeben Java Basics - Anfänger-Themen 3
M Alle Instanzen einer Klasse ansprechen Java Basics - Anfänger-Themen 4
H Erste Schritte JTree: Instanzen einer Klasse speichern oder Namen/Strings... Java Basics - Anfänger-Themen 4
B OOP Summe aus verschiedenen Instanzen einer Klasse berechnen Java Basics - Anfänger-Themen 2
Q OOP Mehrere Instanzen auf ein Feld Java Basics - Anfänger-Themen 13
G Instanzen eines Interfaces erzeugen Java Basics - Anfänger-Themen 7
S Direkt Instanzen anlegen Java Basics - Anfänger-Themen 1
K Variablen Instanzen gleich aber warum ? Java Basics - Anfänger-Themen 3
D Instanzen durch Methode Java Basics - Anfänger-Themen 14
W Zugriff auf Instanzen von Klassen Java Basics - Anfänger-Themen 8
S aus Text Datei Instanzen erzeugen, so richtig? Java Basics - Anfänger-Themen 4
O Liste aller Instanzen einer Klasse Java Basics - Anfänger-Themen 18
H Klassen Instanzen mit anderen Klassen erzeugen Java Basics - Anfänger-Themen 5
C Referenzen zu Instanzen einer Klasse im Array Java Basics - Anfänger-Themen 8
B Enum: Instanzen Java Basics - Anfänger-Themen 10
M Instanzen vergleichen? Java Basics - Anfänger-Themen 12
H Klassen, Konstruktoren, Instanzen etc Java Basics - Anfänger-Themen 6
W Instanzen, Klassen Java Basics - Anfänger-Themen 2
C Vectorarrays und Instanzen Java Basics - Anfänger-Themen 10
S alle instanzen einer klasse löschen Java Basics - Anfänger-Themen 18
C OOP Instanzen ansprechen Java Basics - Anfänger-Themen 3
P Verständnisfrage zu Instanzen/Objekten Java Basics - Anfänger-Themen 9
B Zugriff auf Variablen in nicht bekannten Instanzen Java Basics - Anfänger-Themen 6
R mit klassen-instanzen arbeiten in packages Java Basics - Anfänger-Themen 10
M Instanzen, Referenzen und Collections Java Basics - Anfänger-Themen 3
W mehrere (numerierte) Instanzen erzeugen Java Basics - Anfänger-Themen 3
M Dynamisch Instanzen erstellen. Java Basics - Anfänger-Themen 4
N Instanzen von beliebigen Klassen aus dem Filesystem erzeugen Java Basics - Anfänger-Themen 7
M Problem mit Instanzen von JLabel Java Basics - Anfänger-Themen 4
E Vermeiden,dass mehrere Instanzen eines Java-Programms laufen Java Basics - Anfänger-Themen 2
V mehrere Instanzen gleicher Name möglich? Java Basics - Anfänger-Themen 3
E instanzen von Klassen erzeugen Java Basics - Anfänger-Themen 2
H Instanzen erzeugen und Methoden aufrufen Java Basics - Anfänger-Themen 5
L verschiedene JPanel-Instanzen erstellen Java Basics - Anfänger-Themen 8
T Wo Daten ablegen für mehrere Servlet-Instanzen? Java Basics - Anfänger-Themen 2
J Instanzen dynamisch erzeugen Java Basics - Anfänger-Themen 8
T Instanzen von abstrakten Klassen? Java Basics - Anfänger-Themen 14
D Instanzen einer Klasse Java Basics - Anfänger-Themen 6
G Speicherung von Referenzen auf Instanzen Java Basics - Anfänger-Themen 5
G alle Instanzen einer Klasse serialisieren Java Basics - Anfänger-Themen 4
Silver-Blue mehrere Instanzen einer Klasse, trotz Random immer das Selbe Java Basics - Anfänger-Themen 7
W Instanzen herunterzählen Java Basics - Anfänger-Themen 7
G Instanzen und Referenzen Java Basics - Anfänger-Themen 5
S Instanzen Java Basics - Anfänger-Themen 4
G wenn auch schon oft gefragt (Konstruktor , Instanzen , usw) Java Basics - Anfänger-Themen 6
K Mehrere Werte in einem Switch Case parallel überprüfen Java Basics - Anfänger-Themen 7
Zrebna Fragen zu einem Klassendiagramm Java Basics - Anfänger-Themen 8
S HashMap mehrere Keys zu einem Value Java Basics - Anfänger-Themen 3
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
F 2x 16bit Werte zu einem 32bit und dann splitten mit 0xb Java Basics - Anfänger-Themen 1
J JSON mit einem JPanel Java Basics - Anfänger-Themen 3
F Einem GIT repository ein Projekt hinzufügen Java Basics - Anfänger-Themen 1
J Frage zu einem "Taschenrechner" code Java Basics - Anfänger-Themen 9
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
P Probleme mit NetBeans: Wie lässt sich jar. Datei an einem MacBook öffnen Java Basics - Anfänger-Themen 21
J Auf einem JLabel Linien Malen Java Basics - Anfänger-Themen 1
I @Entity Klassen, Service Beans etc. aus einem Share Projekt beziehen? Java Basics - Anfänger-Themen 26
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
N Einzelne Werte aus einem TreeSet auslesen Java Basics - Anfänger-Themen 2
N Welche Objekte kann man zu einem Set hinzufügen Java Basics - Anfänger-Themen 4
Kumora ArrayIndexOutOfBoundsException bei einem Sortierverfahren Java Basics - Anfänger-Themen 2
I Viereck / Rechteck Prüfung innerhalb einem bestimmten Bereich Java Basics - Anfänger-Themen 2
Distanz zwischen zwei Zeichenfolgen in einem String bestimmen Java Basics - Anfänger-Themen 5
Substring in einem String finden Java Basics - Anfänger-Themen 13
J Fehlerbehandlung an einem Beispiel Java Basics - Anfänger-Themen 8
I ResultSet aus meiner SQL-Abfrage in einem JTextfield ausgeben. Java Basics - Anfänger-Themen 1
I Innerhalb einem Bild ein Teil austauschen Java Basics - Anfänger-Themen 26
I Dateigröße von einem InputStream oder byte[] bekommen Java Basics - Anfänger-Themen 2
H Compiler-Fehler Klasse in einem Package wird nicht gefunden bzw. akzeptiert Java Basics - Anfänger-Themen 12
S Algorithmus entwicklen, der zu einem gegebenen Datum die Jahreszeit ermittelt Java Basics - Anfänger-Themen 13
B In einem Thread Endlosschleife beenden Java Basics - Anfänger-Themen 19
A Elemente in einem Array Java Basics - Anfänger-Themen 5
G Position einer unbekannten 3-stelligen-Zahl in einem String finden Java Basics - Anfänger-Themen 15
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
berserkerdq2 Wie gebe ich den Pfad zu einer Datei an, die in einem Ordner in Eclipse ist? Java Basics - Anfänger-Themen 1
M Objekt in einem Objekt speichern Java Basics - Anfänger-Themen 9
J Speichern von zwei Variablen durch Auslesen aus einem Numberfield Java Basics - Anfänger-Themen 2
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2
D spezifische Knoten in einem Baum zählen Java Basics - Anfänger-Themen 9
X Erste Schritte Hilfe bei einem kleinen Spiel. Java Basics - Anfänger-Themen 19
O Array mit einem Zeichen vergleichen Java Basics - Anfänger-Themen 1
B Brauche Hilfe zu einem Code Java Basics - Anfänger-Themen 5
J Zahlen bis zu einem bestimmten Grenzwert ausgeben Java Basics - Anfänger-Themen 11
P9cman Vokale in einem String überprüfen mittels Rekursion Java Basics - Anfänger-Themen 8
M Wie kann ich eine Methode aus einem Interface in eine Klasse implementieren, so dass sie ihre Funktion ausführt? Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben