hallo!
ich habe folgende aufgabenstellung bekommen:
Die Klasse Chip im Paket jpp.simpleGammon.basics repräsentiert Spielsteine des Simple Gammon Spiels; sie verwaltet die ID des zugehörigen Spielers (entweder PlayerID.PL_1 für weiße Steine oder PlayerID.PL_2 für schwarze Steine), einen boolean-Wert out der angibt, ob der Spielstein aktuell im Aus liegt, einen boolean-Wert done für die Darstellung ob der Spielstein erfolgreich zu Ende (= vom Brett) gespielt wurde, sowie ein Spike-Objekt zur Verwaltung des Spielfelds auf welchem sich der Spielstein aktuell befindet. Die Klasse soll (mindestens) folgende Schnittstelle bereitstellen:
*
public Chip ( PlayerID player )
Der Konstruktor der Spielstein-Klasse; er setzt die ID des Spielers auf den übergebenen Wert und initialisiert die Werte für out und done mit false.
*
public PlayerID getPlayerID ( )
liefert die ID des Spielers.
*
public boolean isDone ( )
gibt an, ob der Spielstein bereits erfolgreich vom Brett gespielt wurde.
*
public void setDone ( boolean done )
setzt den Status des Spielsteins, d.h. ob er erfolgreich vom Brett gespielt werden konnte oder nicht.
*
public boolean isOut ( )
gibt an, ob der Stein aktuell im Aus steht.
*
public void setOut ( boolean out )
setzt den Aus-Status des Spielsteins auf den übergebenen Wert.
*
public Spike getCurrentSpike ( )
liefert das Spielfeld, auf dem sich der Spielstein aktuell befindet.
*
public void setCurrentSpike ( Spike spike )
setzt das aktuelle Spielfeld auf dem sich der Spielstein befindet.
und dazu folgenden Code geschrieben:
und dann folgende fehlermeldung erhalten:
3Test(s) saved.
Compilation successful.
Testsuite: level_1.TestChip
Tests run:5, Failures: 2, Errors: 0, Time elapsed: 0.05 sec
Testcase: testConstructor took 0.005 sec
Testcase: testGetPlayerID took 0.004 sec
Testcase: testSetGetDone took 0.007 sec
FAILED
problems with setDone() and getDone() expected:<false> but was:<true>
junit.framework.AssertionFailedError: problems with setDone() and getDone() expected:<false> but was:<true>
at level_1.TestChip.testSetGetDone(TestChip.java:49)
Testcase: testSetGetOut took 0 sec
FAILED
problems with setOut() and getOut() expected:<false> but was:<true>
junit.framework.AssertionFailedError: problems with setOut() and getOut() expected:<false> but was:<true>
at level_1.TestChip.testSetGetOut(TestChip.java:65)
Testcase: testSetGetCurrSpike took -0.001 sec
woran kanns liegen, dass in den methoden die werte vertauscht werden??
wäre für hilfe dankbar
ich habe folgende aufgabenstellung bekommen:
Die Klasse Chip im Paket jpp.simpleGammon.basics repräsentiert Spielsteine des Simple Gammon Spiels; sie verwaltet die ID des zugehörigen Spielers (entweder PlayerID.PL_1 für weiße Steine oder PlayerID.PL_2 für schwarze Steine), einen boolean-Wert out der angibt, ob der Spielstein aktuell im Aus liegt, einen boolean-Wert done für die Darstellung ob der Spielstein erfolgreich zu Ende (= vom Brett) gespielt wurde, sowie ein Spike-Objekt zur Verwaltung des Spielfelds auf welchem sich der Spielstein aktuell befindet. Die Klasse soll (mindestens) folgende Schnittstelle bereitstellen:
*
public Chip ( PlayerID player )
Der Konstruktor der Spielstein-Klasse; er setzt die ID des Spielers auf den übergebenen Wert und initialisiert die Werte für out und done mit false.
*
public PlayerID getPlayerID ( )
liefert die ID des Spielers.
*
public boolean isDone ( )
gibt an, ob der Spielstein bereits erfolgreich vom Brett gespielt wurde.
*
public void setDone ( boolean done )
setzt den Status des Spielsteins, d.h. ob er erfolgreich vom Brett gespielt werden konnte oder nicht.
*
public boolean isOut ( )
gibt an, ob der Stein aktuell im Aus steht.
*
public void setOut ( boolean out )
setzt den Aus-Status des Spielsteins auf den übergebenen Wert.
*
public Spike getCurrentSpike ( )
liefert das Spielfeld, auf dem sich der Spielstein aktuell befindet.
*
public void setCurrentSpike ( Spike spike )
setzt das aktuelle Spielfeld auf dem sich der Spielstein befindet.
und dazu folgenden Code geschrieben:
Java:
public class Chip {
boolean out;
boolean done;
PlayerID player;
Spike CurrentSpike;
public Chip(PlayerID player) {
this.player = player;
this.out = false;
this.done = false;
}
public PlayerID getPlayerID() {
return this.player;
}
public void setDone(boolean done) {
this.done = true;
}
public boolean isDone() {
return done;
}
public void setOut(boolean out) {
this.out = true;
}
public boolean isOut() {
return out;
}
public void setCurrentSpike(Spike spike) {
this.CurrentSpike = spike;
}
public Spike getCurrentSpike() {
return this.CurrentSpike;
}
}
und dann folgende fehlermeldung erhalten:
3Test(s) saved.
Compilation successful.
Testsuite: level_1.TestChip
Tests run:5, Failures: 2, Errors: 0, Time elapsed: 0.05 sec
Testcase: testConstructor took 0.005 sec
Testcase: testGetPlayerID took 0.004 sec
Testcase: testSetGetDone took 0.007 sec
FAILED
problems with setDone() and getDone() expected:<false> but was:<true>
junit.framework.AssertionFailedError: problems with setDone() and getDone() expected:<false> but was:<true>
at level_1.TestChip.testSetGetDone(TestChip.java:49)
Testcase: testSetGetOut took 0 sec
FAILED
problems with setOut() and getOut() expected:<false> but was:<true>
junit.framework.AssertionFailedError: problems with setOut() and getOut() expected:<false> but was:<true>
at level_1.TestChip.testSetGetOut(TestChip.java:65)
Testcase: testSetGetCurrSpike took -0.001 sec
woran kanns liegen, dass in den methoden die werte vertauscht werden??
wäre für hilfe dankbar