コード例 #1
0
        public override void Überweisung(decimal betrag, Konto zielKonto)
        {
            // Suffix:
            //int zahl1 = 5;
            //double zahl2 = 12.5D;
            //long zahl3 = 1234L;
            //ulong zahl4 = 1234UL;
            //float zahl5 = 123.123F;
            //decimal zahl6 = 123.123M;

            if (betrag < 0)
            {
                throw new ArgumentException("Sie dürfen keinen negativen Betrag überweisen");
            }

            this.Abheben(betrag * 1.03m); // + Überweisungsgebühr von 3%
            zielKonto.Einzahlen(betrag);
        }
コード例 #2
0
        public virtual void Überweisung(decimal betrag, Konto zielKonto)
        {
            // Logik:
            // Beim eigenen Konto: Betrag abziehen
            // Beim ZielKonto: Betrag hinzufügen

            // -> Einzahlen ()
            // -> Abheben ()

            //Eigenes Konto (this. == aktuelle Instanz)

            if (betrag < 0)
            {
                throw new ArgumentException("Sie dürfen keinen negativen Betrag überweisen");
            }

            this.Abheben(betrag);
            //Fremdes Konto
            zielKonto.Einzahlen(betrag);
        }
コード例 #3
0
        public override void Überweisung(decimal betrag, Konto zielKonto)
        {
            if (betrag > 100)
            {
                throw new InvalidOperationException("Sie dürfen nicht mehr als 100€ überweisen");
                // Console.WriteLine("Sie dürfen nicht mehr als 100€ überweisen");
            }
            else if (betrag > Kontostand)
            {
                throw new InvalidOperationException("Sie dürfen nicht mehr überweisen als Sie besitzen");
                //Console.WriteLine("Sie dürfen nicht mehr überweisen als Sie besitzen");
            }
            else // Alles Geht
            {
                //// Variante 1: CopyPaste
                ////Eigenes Konto (this. == aktuelle Instanz)
                //this.Abheben(betrag);
                ////Fremdes Konto
                //zielKonto.Einzahlen(betrag);

                // Variante 2:
                base.Überweisung(betrag, zielKonto); // Es gibt ja schon eine Logik
            }
        }