class StudentenKonto
{
  // Attribute
  String matrikelnr;		// Matrikelnr. in der Form ##-####
  String name;			// Name des Studenten
  double kontostand = 0.0;	// aktueller Kontostand

  // Methoden:
  // Konstruktoren

  StudentenKonto()
  {

    matrikelnr = "<##-####>";
    name = "<unbekannt>";
    kontostand = 0.0;

  }

  StudentenKonto(String mnr, String name, double betrag)
  {
    matrikelnr = mnr;
    this.name = name;
    kontostand = betrag;
  }

  // Buchung durchführen; Kontostand aktualisieren
  // Der Betrag muss jeweils groesser oder gleich Null sein.
  // Falls nicht, wird das Programm abgebrochen; andernfalls
  // wird der Kontostand entsprechend aktualisiert.
  void belastung(double betrag)
  {   
    if (betrag < 0)
    {
      System.out.println("Der Betrag muss >= 0 sein!");
      System.exit(1);
    }
    kontostand -= betrag;    
  }

  void gutschrift(double betrag)
  {
    if (betrag < 0)
    {
      System.out.println("Der Betrag muss >= 0 sein!");
      System.exit(1);
    }
    kontostand += betrag;    
  }

  // aktuelle Werte der Attribute zurückliefern
  String getMatrikelnr()
  {
    return matrikelnr;
  }

  String getName()
  {
    return name;
  }

  double getKontostand()
  {
    return kontostand;
  }

  // Kontoauszug drucken
  void druckeKontoauszug()
  {
    System.out.println("Matrikelnr.: " + matrikelnr);
    System.out.println("Name:        " + name);
    System.out.println("Kontostand:  " + kontostand + " DM");
  }

}
