© APSIS GmbH
, Polling,
2000
Implementierung der Schnittstelle Farbmenge aus der Bibliothek für das Lehrbuch Programmieren mit Java
Dokumentation
Programmtext ohne Dokumentation
/* * @(#)kapitel9/Farbmenge.java * Bibliothek für das Lehrbuch in Java * @author Prof. Solymosi, (c): APSIS GmbH * @version 3.0 * @date 28. August 2000 */
package lehrbuch.kapitel9; import lehrbuch.*; // Farbe, BereichAusnahme
/** Implementierung der Menge für Farben als boolean Reihung */
public class FarbmengeImpl implements Farbmenge {
/** Parameterloser Konstruktor */
public FarbmengeImpl() {
for (int i = 0; i < inhalt.length; i++)
inhalt[i] = false;
}
/** Kopierkonstruktor
@param quelle const die zu kopierende Farbmenge
*/
public FarbmengeImpl(final FarbmengeImpl quelle) {
for (int i = 0; i < inhalt.length; i++)
inhalt[i] = quelle.inhalt[i];
}
/** Löscht alle Farben aus der Farbmenge */
public void entleeren() {
for (int i = 0; i < inhalt.length; i++)
inhalt[i] = false;
}
/** Trägt eine Farbe in die Farbmenge ein.
@param farbe const der einzutragende Farbwert
*/
public void fuellen(final Farbe farbe) {
inhalt[farbe.pos()] = true;
}
/** Löscht eine Farbe aus der Farbmenge.
@param farbe const die zu löschende Farbe
*/
public void entfernen(final Farbe farbe) {
inhalt[farbe.pos()] = false;
}
/** Überprüft, ob eine bestimmte Farbe in der Farbmenge enthalten ist.
const
@param element const die gesuchte Farbe
@return true wenn die Farbmenge die Farbe enthält
*/
public boolean vorhanden(final Farbe farbe) {
return inhalt[farbe.pos()];
}
/** Zeigt alle gespeicherten Farben am Bildschirm an.
const
*/
public void allesAnzeigen() {
try {
for (int i = 0; i < inhalt.length; i++)
if (inhalt[i]) {
Farbe farbe = Farbe.ROT;
farbe = (Farbe)farbe.wert(i);
farbe.meldung();
}
} catch (BereichAusnahme ausnahme) {
System.err.println("Programmfehler in FarbmengeImpl.allesAnzeigen");
throw new LehrbuchFehler();
}
}
// private Komponenten: protected boolean[] inhalt = new boolean[3]; }
© APSIS GmbH
, Polling,
2000