Einigen Klassen die JavaDocs hinzugefügt

JavaDoc_Kommentare
nico 2023-01-08 21:06:59 +01:00
parent 29004a278d
commit bbcfe41056
8 changed files with 165 additions and 0 deletions

View File

@ -5,16 +5,42 @@ import exceptions.RobotIllegalStateException;
import exceptions.RobotMagicValueException; import exceptions.RobotMagicValueException;
import roboterSystem.Robot; import roboterSystem.Robot;
/**
* Die Klasse repräsentiert das C3PO Modell.
*
* Der Roboter hat einen Konstruktor <code>C3PO(...)</code> welcher einen Namen,
* eine iD und einen Zähler besitzt der die iD erhöht.
*
* <code>think(...)</code> lässt den Roboter ein int Array absteigend sortieren
* und dann zurückgeben.
*/
public class C3PO extends Robotermodell implements Robot { public class C3PO extends Robotermodell implements Robot {
/**
* Der Zähler repräsentiert die iD.
*/
private int zähler = 10000; private int zähler = 10000;
/**
* Der Konstruktor des C3PO Roboters besitzt einen Namen, eine iD
* und einen Zähler.
*
* @param String name der den Namen des Roboters repräsentiert.
*/
public C3PO(String name) { public C3PO(String name) {
setName(name); setName(name);
setiD(zähler); setiD(zähler);
zähler++; zähler++;
} }
/**
* Sortiert ein Array von Zahlen. Die Reihenfolge verläuft absteigend.
*
* @param zahlen Zahlen, die sortiert werden sollen.
* @return Sortierte Zahlen
* @throws RobotException wenn der Roboter in einem ungültigen Zustand ist,
* oder das Array nicht seinen Vorstellungen entspricht.
*/
@Override @Override
public int[] think(int[] zahlen) throws RobotException { public int[] think(int[] zahlen) throws RobotException {
try { try {

View File

@ -4,24 +4,64 @@ import exceptions.RobotException;
import exceptions.RobotIllegalStateException; import exceptions.RobotIllegalStateException;
import roboterSystem.Robot; import roboterSystem.Robot;
/**
* Die Klasse repräsentiert das Nexus6 Modell.
*
* Der Roboter hat einen privaten Konstruktor <code>Nexus6()</code> welcher einen
* festen Namen, eine feste iD hat und der Roboter ist ausgestellt.
*
* Damit auf den Singleton Roboter zugegriffen werden kann wird <code>getInstance()</code>
* diesen spezifischen Roboter zurückgeben.
*
* Der Roboter ist immer ausgestellt, daher macht <code>triggerPowerSwitch()</code>
* nichts.
*
* <code>think(...)</code> lässt den Roboter Exceptions werfen, macht allerdings
* nichts anderes.
*/
public class Nexus6 extends Robotermodell implements Robot { public class Nexus6 extends Robotermodell implements Robot {
/**
* Die private final Nexus6 Variable erzeugt immer einen Nexus6 Roboter
* und verhindert die erneute Erzeugung eines weiteren Nuxus6 Roboters.
*/
private static final Nexus6 NEXUS6 = new Nexus6(); private static final Nexus6 NEXUS6 = new Nexus6();
/**
* Der Konstruktor des Nexus6 Roboters besitzt einen Namen, eine iD
* und seine Power ist immer aus.
*/
private Nexus6() { private Nexus6() {
setName("Pris"); setName("Pris");
setiD(19281982); setiD(19281982);
power = false; power = false;
} }
/**
* Gibt die einzige Instanz des Roboters zurück.
*
* @return Eine eindeutige Identifikation in Form des Objekts.
*/
public static Nexus6 getInstance() { public static Nexus6 getInstance() {
return NEXUS6; return NEXUS6;
} }
/**
* Power ändern machts nichts, da der Roboter immer aus ist.
*/
@Override @Override
public void triggerPowerSwitch() { public void triggerPowerSwitch() {
//bleibt ausgeschaltet //bleibt ausgeschaltet
} }
/**
* Macht rein gar nichts, außer die Exception zu werfen
*
* @param zahlen Zahlen, die in einer anderen Zeitlinie sortiert werden sollten.
* @return null, da nichts gemacht wird
* @throws RobotException wenn der Roboter in einem ungültigen Zustand ist,
* oder das Array nicht seinen Vorstellungen entspricht.
*/
@Override @Override
public int[] think(int[] zahlen) throws RobotException { public int[] think(int[] zahlen) throws RobotException {
try { try {

View File

@ -5,16 +5,42 @@ import exceptions.RobotIllegalStateException;
import exceptions.RobotMagicValueException; import exceptions.RobotMagicValueException;
import roboterSystem.Robot; import roboterSystem.Robot;
/**
* Die Klasse repräsentiert das R2D2 Modell.
*
* Der Roboter hat einen Konstruktor <code>R2D2(...)</code> welcher einen Namen,
* eine iD und einen Zähler besitzt der die iD erhöht.
*
* <code>think(...)</code> lässt den Roboter ein int Array aufsteigend sortieren
* und dann zurückgeben.
*/
public class R2D2 extends Robotermodell implements Robot { public class R2D2 extends Robotermodell implements Robot {
/**
* Der Zähler repräsentiert die iD.
*/
private int zähler = 0; private int zähler = 0;
/**
* Der Konstruktor des R2D2 Roboters besitzt einen Namen, eine iD
* und einen Zähler.
*
* @param String name der den Namen des Roboters repräsentiert.
*/
public R2D2(String name) { public R2D2(String name) {
setName(name); setName(name);
setiD(zähler); setiD(zähler);
zähler++; zähler++;
} }
/**
* Sortiert ein Array von Zahlen. Die Reihenfolge verläuft aufsteigend.
*
* @param zahlen Zahlen, die sortiert werden sollen.
* @return Sortierte Zahlen
* @throws RobotException wenn der Roboter in einem ungültigen Zustand ist,
* oder das Array nicht seinen Vorstellungen entspricht.
*/
@Override @Override
public int[] think(int[] zahlen) throws RobotException { public int[] think(int[] zahlen) throws RobotException {
try { try {

View File

@ -1,5 +1,10 @@
package domain; package domain;
/**
* Die Klasse repräsentiert alle Roboter Modelle die existieren.
*
* Die Roboter können vom Modell C3PO, R2D2 oder NEXUS6 sein.
*/
public enum RobotType { public enum RobotType {
C3PO, R2D2, NEXUS6; C3PO, R2D2, NEXUS6;
} }

View File

@ -1,11 +1,28 @@
package exceptions; package exceptions;
/**
* Die Klasse repräsentiert die Exceptions der Roboter.
*
* Der Roboter hat einen Konstruktor <code>RobotException()</code> welcher nichts macht.
*
* Der Roboter hat einen weiteren Konstruktor <code>RobotException(...)</code> welcher
* einen String übergeben bekommt und diesen an seine Superklasse übergibt.
*/
public class RobotException extends Exception{ public class RobotException extends Exception{
/**
* Der Konstruktor macht nichts.
*/
public RobotException() { public RobotException() {
} }
/**
* Der Konstruktor bekommt einen String übergeben und gibt diesen an
* seine Superklasse weiter.
*
* @param String fehlertext repräsentiert den Text den die Exception wirft.
*/
public RobotException(String fehlertext) { public RobotException(String fehlertext) {
super(fehlertext); super(fehlertext);
} }

View File

@ -1,11 +1,30 @@
package exceptions; package exceptions;
/**
* Die Klasse repräsentiert die RobotIllegalStateException der Roboter.
*
* Der Roboter hat einen Konstruktor <code>RobotException()</code> welcher einen
* Fehlertext an seine Superklasse übergibt.
*
* Der Roboter hat einen weiteren Konstruktor <code>RobotException(...)</code> welcher
* einen String übergeben bekommt und diesen an seine Superklasse übergibt.
*/
public class RobotIllegalStateException extends RobotException{ public class RobotIllegalStateException extends RobotException{
/**
* Der Konstruktor erzeugt einen Fehlertext und übergibt diesen an
* seine Superkalsse.
*/
public RobotIllegalStateException() { public RobotIllegalStateException() {
super("Leider ist der Roboter aus und kann nichts machen!"); super("Leider ist der Roboter aus und kann nichts machen!");
} }
/**
* Der Konstruktor bekommt einen String übergeben und gibt diesen an
* seine Superklasse weiter.
*
* @param String fehlertext repräsentiert den Text den die Exception wirft.
*/
public RobotIllegalStateException(String fehlertext) { public RobotIllegalStateException(String fehlertext) {
super(fehlertext); super(fehlertext);
} }

View File

@ -1,11 +1,30 @@
package exceptions; package exceptions;
/**
* Die Klasse repräsentiert die RobotMagicValueException der Roboter.
*
* Der Roboter hat einen Konstruktor <code>RobotException()</code> welcher einen
* Fehlertext an seine Superklasse übergibt.
*
* Der Roboter hat einen weiteren Konstruktor <code>RobotException(...)</code> welcher
* einen String übergeben bekommt und diesen an seine Superklasse übergibt.
*/
public class RobotMagicValueException extends RobotException{ public class RobotMagicValueException extends RobotException{
/**
* Der Konstruktor erzeugt einen Fehlertext und übergibt diesen an
* seine Superkalsse.
*/
public RobotMagicValueException() { public RobotMagicValueException() {
super("Zahl 42 kommt vor - Roboter: \"Ihhhhh\"!"); super("Zahl 42 kommt vor - Roboter: \"Ihhhhh\"!");
} }
/**
* Der Konstruktor bekommt einen String übergeben und gibt diesen an
* seine Superklasse weiter.
*
* @param String fehlertext repräsentiert den Text den die Exception wirft.
*/
public RobotMagicValueException(String fehlertext) { public RobotMagicValueException(String fehlertext) {
super(fehlertext); super(fehlertext);
} }

View File

@ -5,8 +5,21 @@ import domain.R2D2;
import domain.RobotType; import domain.RobotType;
import domain.Robotermodell; import domain.Robotermodell;
/**
* Die Klasse repräsentiert die RobotFactory.
*
* Mit <code>robotFactory(...)</code> werden die jeweiligen Modelle bzw. Instanzen
* der Roboter erzeugt.
*/
public class RobotFactory { public class RobotFactory {
/**
* Erzeugt die jeweiligen Modelle der Roboter.
*
* @param RobotType modell stellt als Enum das Modell des Roboters dar.
* @param String name stellt den Namen des Roboters dar.
* @return Eine eindeutige Instanz in Form des Objekts oder eben null.
*/
public static Robotermodell robotFactory (RobotType modell, String name) { public static Robotermodell robotFactory (RobotType modell, String name) {
switch(modell) { switch(modell) {
case C3PO: case C3PO: