Skip to main content
eick-at moodle
  • Home
  • Calendar
  • More
You are currently using guest access
Log in
eick-at moodle
Home Calendar
Expand all Collapse all
  1. Grundlagen OOP mit C#
  2. Vererbung
  3. Aufg.: Taschengeldkonto

Aufg.: Taschengeldkonto

Completion requirements
Opened: Monday, 6 January 2020, 8:30 PM
Due: Monday, 6 January 2020, 8:30 PM
Sie arbeiten für ein Finanzinstitut und sollen folgendes Programm überarbeiten:

  1. class Konto
  2. {
  3.     private double ktoStand;   
  4.     private int nr;
  5.     private static int zaehler = 400000;    //statische Eigenschaft
  6.        
  7.  
  8.     Kunde kunde;
  9.     private Konto()              //Standardkonstruktor
  10.     {
  11.         nr = ++zaehler;       
  12.         ktoStand = 0;
  13.     }
  14.  
  15.     public Konto(double w, Kunde k)
  16.         : this()                // allgemeiner Konstruktor (mind. ein Parameter)
  17.     {                           // :this() bewirkt, dass zuerst der Standardkonstr.
  18.                                 //aufgerufen wird
  19.         ktoStand = w;
  20.         kunde = k;
  21.     }
  22.     public Kunde getKunde()
  23.     {
  24.         return kunde;
  25.     }
  26.     public int getKtoNr()
  27.     {
  28.         return nr;
  29.     }
  30.     public double getKtoStand() //Methode getKtoStand() liefert ktoStand zurück
  31.     {                           //public, damit von außen aufrufbar
  32.         return ktoStand;
  33.     }
  34.     public void buchen(double betrag)
  35.     {
  36.         ktoStand += betrag;     //ktoStand = ktoStand + betrag;
  37.     }
  38. }
  39.  
  40. class Kunde
  41. {
  42.     private string name;
  43.     private int nr;
  44.     private static int zaehler = 400000;
  45.     private List<Konto> konten = new List<Konto>();  //Liste mit Konten
  46.  
  47.     public Kunde()      //Standardkonstruktor (keine Parameter)
  48.     {
  49.         nr = ++zaehler;
  50.         name = "noname";
  51.     }
  52.     public Kunde(string name)
  53.         : this()             // allgemeiner Konstruktor (mind. ein Parameter)
  54.     {                        // :this() bewirkt, dass zuerst der Standardkonstr.
  55.                              // aufgerufen wird
  56.         this.name = name;
  57.     }
  58.     public void addKonto(Konto kto)
  59.     {
  60.         konten.Add(kto);    // Hinzufügen eines Kontos
  61.     }
  62.     public List<Konto> getKonten()  //Liste mit Konten zurückgeben
  63.     {
  64.         return konten;
  65.     }
  66.     public void setName(string name)
  67.     {
  68.         this.name = name;  
  69.     }
  70.     public string getName()
  71.     {
  72.         return name;
  73.     }
  74.     public int getNr()
  75.     {
  76.         return nr;
  77.     }
  78. }


Die Marketing-Abteilung will nun Taschengeldkonten einführen, um potentielle Kunden schon früh zu binden. Taschengeldkonten unterscheiden sich von den bisherigen Bankkonten dadurch, dass sie nicht überzogen werden können und es muss ein Erziehungberechtigter 2. Kunde geführt werden.

Erweitern sie das Programm so, dass auch Taschengeldkonten verwaltet werden können und zeichnen sie das UML-Klassendiagramm


You are currently using guest access (Log in)
Data retention summary
Get the mobile app
Powered by Moodle