Java: Quellcode nicht implementierbar?

Hallo,

ich habe folgenden Code und folgendes Problem: Ich möchte in der Methode taktsignalGeben die Methoden aus Nummernanzeige nutzen. nummernanzeige.erhoehen() funktioniert jedoch nicht.

Daher meine Frage, wie ich das so verbessern kann, dass nur Methoden aus Nummernanzeige funktionieren.

class Nummernanzeige {
  private final int _limit;

  private int _wert;

  /**
   * Konstruktor fuer Exemplare der Klasse Nummernanzeige
   * @param anzeigeGrenze das Limit fuer die Anzeige
   */
  public Nummernanzeige(int anzeigeGrenze, int minute) {
    _limit = anzeigeGrenze;
    _wert = minute;
  }

  /**
   * @return Liefere das Limit dieser Anzeige.
   */
  public int gibLimit() {
    return _limit;
  }

  /**
   * @return Liefere den aktuellen Wert dieser Anzeige.
   */
  public int gibWert() {
    return _wert;
  }

  /**
   * Liefere den Anzeigewert, also den Wert dieser Anzeige als einen String
   * mit zwei Ziffern. Wenn der Wert der Anzeige kleiner als zehn ist, wird
   * das Ergebnis mit einer fuehrenden Null versehen.
   *
   * @return liefert den Anzeigewert als String
   */
  public String gibAnzeigewert() {
    return Integer.toString(_wert);
  }

  public int setzeWert(int wert) {
    _wert = wert;
    return _wert;
  }

  public void erhoehen() {
    _wert = _wert < _limit-1 ? _wert + 1 : 0;
  }
}

-

/**
 * Beschreiben Sie hier die Klasse Uhrenanzeige.
 * 
 * @author (Ihr Name) 
 * @version (eine Versionsnummer oder ein Datum)
 */
public class Uhrenanzeige {
  // Instanzvariablen - ersetzen Sie das folgende Beispiel mit Ihren Variablen
  private int _stunde;

  Nummernanzeige nummernanzeige;

  private int _minute;

  public Uhrenanzeige (int stunde, int minute, int anzeigeGrenze) {
    nummernanzeige = new Nummernanzeige(anzeigeGrenze, minute);
    _stunde = stunde;
    _minute = minute;
  }

  public void setzeUhrzeit(int stunde, int minute) {
    _stunde = nummernanzeige.setzeWert(stunde);
    _minute = nummernanzeige.setzeWert(minute);
  }

  public double stunde() {
    return _stunde;
  }

  public double minute() {
    return _minute;
  }

  public double taktsignalGeben() {
    nummernanzeige.erhoehen();
    return _minute;
  }
}
Computer, Schule, Programmieren, Java, Informatik, Softwareentwicklung
4 Antworten