8 Implementieren einer Assertion (Methode transfer())

Submitted by javafrage on Thu, 01/15/2015 - 18:47

Die Methode transfer() führt eine Banküberweisung durch. Es wird ein Betrag von einem Konto1 auf ein Konto2 überwiesen. Schreiben Sie eine Assertion und fügen Sie sie am Anfang der Methode ein.

Die Assertion soll

  • bei negativen Beträgen aktiv werden
  • aktiv werden wenn Konto1 nicht gedeckt ist. Es soll nach der Überweisung keinen negativen Betrag haben
  • Nutzen Sie die erweiterte Form der Assertion die einen Text drucken kann.
  • Nutzen sie einen vernünftigen Text.
class Ueberweisung {
   public static int transfer(int betrag,int kontoVon, int kontoNach) {
      // Hier Assertion einfügen
      kontoNach += betrag;
      kontoVon -= betrag;
      return kontoNach;
   }

   public static void main(String[] args) {
      int k = transfer( 100, 200, 10);
      System.out.println(k);
      k = transfer( 100, 80, 10); // Hier soll Assertion feuern
      System.out.println(k);
   }
} 

Die Antwort finden Sie hinter der nächsten Frage (URL rechts unten klicken).

Niveau 2
Schwierigkeitsgrad mittel
Zeit 3 Minuten

Antwort zu Frage 7: Analyse von Assertions

-16

Sie wird nicht ausgeführt da die Option -ea nicht verwendet wird. Durch Benutzen der Option -ea wird die Assertion benutzt und die Konsolenausgabe ändert sich